(57)【要約】【課題】不正ドメイン・ネーム・サービス（ＤＮＳ）サーバを識別するための方法、システム、およびコンピュータ読取り可能記憶媒体において具現化されるコンピュータ・プログラム製品を提供する。【解決手段】実施形態は、目標ネットワーク上のトラフィックを受動的に監視するステップと、ネットワーク上のトラフィックにおけるＤＮＳ解決応答を識別するステップとを含む。ＤＮＳ解決応答は、ドメイン対インターネット・プロトコル（ＩＰ）アドレスのマッピングを含む。このＤＮＳ解決応答は、ドメイン対ＩＰアドレスの既知のマッピングの予め構成されたリストと比較される。この比較の結果に基づいて、このＤＮＳ解決応答が正しいかどうかが判定され得る。ＤＮＳ解決応答が誤っている場合は、そのＤＮＳ解決応答のプロバイダが不正ＤＮＳサーバである。【選択図】図３
2013247674.tif 000002
【特許請求の範囲】
【請求項１】
不正ドメイン・ネーム・サービス（ＤＮＳ）サーバを識別するための方法であって、前記方法は、
ネットワーク上のトラフィックを受動的に監視するステップと、
前記ネットワーク上の前記トラフィックにおけるＤＮＳ解決応答を識別するステップであって、前記ＤＮＳ解決応答はドメイン対インターネット・プロトコル（ＩＰ）アドレスのマッピングを含む、識別するステップと、
前記ＤＮＳ解決応答をドメイン対ＩＰアドレスの既知のマッピングの予め構成されたリストと比較するステップと、
前記比較するステップに基づいて前記ＤＮＳ解決応答が正しいかどうかを判定するステップと
を含む、方法。
【請求項２】
前記ＤＮＳ解決応答が誤りであると判定された場合に警告を送るステップをさらに含む、請求項１に記載の方法。
【請求項３】
前記警告は、ｅメール・メッセージ、ＳＭＳメッセージ、ログ・エントリ、またはセキュリティ事象通知のうちの少なくとも１つを含む、請求項２に記載の方法。
【請求項４】
ドメイン対ＩＰアドレスの既知のマッピングの前記予め構成されたリスト内の各ＩＰアドレスは、特定のＩＰアドレスである、請求項１に記載の方法。
【請求項５】
ドメイン対ＩＰアドレスの既知のマッピングの前記予め構成されたリスト内の各ＩＰアドレスは、少なくとも１つのワイルド・カードを用いて表されるＩＰアドレスの範囲である、請求項１に記載の方法。
【請求項６】
ドメイン対ＩＰアドレスの既知のマッピングの前記予め構成されたリストは、ネットワークのユーザが最も頻繁に訪れたドメインの予め構成されたリストを含む、請求項１に記載の方法。
【請求項７】
ドメイン対ＩＰアドレスの既知のマッピングの前記予め構成されたリストは、ネットワーク・ユーザによってアクセスされる機密情報をホスティングするドメインの予め構成されたリストを含む、請求項１に記載の方法。
【請求項８】
前記ネットワークはイントラネットを含む、請求項１に記載の方法。
【請求項９】
不正ドメイン・ネーム・サービス（ＤＮＳ）サーバを識別するためのシステムであって、
ネットワーク上のトラフィックを受動的に監視するための監視構成要素と、
前記ネットワーク上の前記トラフィックにおけるＤＮＳ解決応答を識別するための識別構成要素であって、前記ＤＮＳ解決応答はドメイン対インターネット・プロトコル（ＩＰ）アドレスのマッピングを含む、識別構成要素と、
前記ＤＮＳ解決応答をドメイン対ＩＰアドレスの既知のマッピングの予め構成されたリストと比較するための比較構成要素と、
前記比較に基づいて前記ＤＮＳ解決応答が正しいかどうかを判定するための判定構成要素と
を含む、システム。
【請求項１０】
前記ＤＮＳ解決応答が誤りであると判定された場合に警告を送るための警告構成要素をさらに含む、請求項９に記載のシステム。
【請求項１１】
前記警告は、ｅメール・メッセージ、ＳＭＳメッセージ、ログ・エントリ、またはセキュリティ事象通知のうちの少なくとも１つを含む、請求項１０に記載のシステム。
【請求項１２】
ドメイン対ＩＰアドレスの既知のマッピングの前記予め構成されたリスト内の各ＩＰアドレスは、特定のＩＰアドレスである、請求項９に記載のシステム。
【請求項１３】
ドメイン対ＩＰアドレスの既知のマッピングの前記予め構成されたリスト内の各ＩＰアドレスは、少なくとも１つのワイルド・カードを用いて表されるＩＰアドレスの範囲である、請求項９に記載のシステム。
【請求項１４】
ドメイン対ＩＰアドレスの既知のマッピングの前記予め構成されたリストは、ネットワークのユーザが最も頻繁に訪れたドメインの予め構成されたリストを含む、請求項９に記載のシステム。
【請求項１５】
ドメイン対ＩＰアドレスの既知のマッピングの前記予め構成されたリストは、ネットワーク・ユーザによってアクセスされる機密情報をホスティングするドメインの予め構成されたリストを含む、請求項９に記載のシステム。
【請求項１６】
前記ネットワークはイントラネットを含む、請求項９に記載のシステム。
【請求項１７】
コンピュータ・プログラムであって、前記コンピュータ・プログラムは、計算デバイスによって実行されるときに、不正ドメイン・ネーム・サービス（ＤＮＳ）サーバを識別するための方法の各ステップをコンピュータ・システムに実施させ、前記方法は、
ネットワーク上のトラフィックを受動的に監視するステップと、
前記ネットワーク上の前記トラフィックにおけるＤＮＳ解決応答を識別するステップであって、前記ＤＮＳ解決応答はドメイン対インターネット・プロトコル（ＩＰ）アドレスのマッピングを含む、識別するステップと、
前記ＤＮＳ解決応答をドメイン対ＩＰアドレスの既知のマッピングの予め構成されたリストと比較するステップと、
前記比較するステップに基づいて前記ＤＮＳ解決応答が正しいかどうかを判定するステップと
を含む、コンピュータ・プログラム。
【請求項１８】
前記方法は、前記ＤＮＳ解決応答が誤りであると判定された場合に警告を送るステップをさらに含む、請求項１７に記載のコンピュータ・プログラム。
【請求項１９】
ドメイン対ＩＰアドレスの既知のマッピングの前記予め構成されたリスト内の各ＩＰアドレスは、
特定のＩＰアドレス、または
少なくとも１つのワイルド・カードを用いて表されるＩＰアドレスの範囲
のうちの１つである、請求項１７に記載のコンピュータ・プログラム。
【請求項２０】
前記ネットワークはイントラネットを含む、請求項１７に記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願（米国特許出願における相互参照）
本特許出願は、本出願と同時に提出される同一の譲受人に譲渡された米国特許出願連続番号第１３／４７９，４１８号（代理人整理番号ＣＨＡ９２０１２００１１ＵＳ１、対応日本国出願は無し）に関連するものである。
【０００２】
本発明は一般的に、ネットワーク情報に対する信頼性のない、または損なわれたソースを識別することに関する。より特定的には、本発明は受動監視を介して不正（ｒｏｇｕｅ）ＤＮＳサーバを識別することに関する。
【背景技術】
【０００３】
ドメイン・ネーム・サービス（Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｅｒｖｉｃｅ：ＤＮＳ）は、英数字のドメイン・ネームを解決して数字のＩＰアドレスにする。このサービスは、インターネットの周囲に分散するサーバおよびローカル・イントラネット内のサーバの緩い集合体によって提供される。しかしながら、もしこのサービスを通じて供給された情報が認可されたソースではなく誤った情報を供給する攻撃者のシステムから来たものであったり、損なわれた認可ソースから来たものであったりすれば、ネットワーク・トラフィックがサービス拒否（ｄｅｎｉａｌ  ｏｆ  ｓｅｒｖｉｃｅ：ＤＯＳ）攻撃によって妨げられるか、またはスプーフィング（なりすまし）もしくは中間者攻撃によって誤ってルート指定されるおそれがある。その結果、機密のトラフィックが信頼性のないシステムに配信されるか、またはまったく配信されないことが起こり得る。
【０００４】
これらのサービスを破壊し得るやり方の１つは、信頼性あるワイヤレス・アクセス・ポイントを詐称して自身を中間者（ｍａｎ−ｉｎ−ｔｈｅ−ｍｉｄｄｌｅ：ＭＩＴＭ）として確立する「エビル・ツイン」ＷｉＦｉホットスポットを攻撃者が設定することによって、ネットワーク・トラフィックを再ルート指定することである。ＭＩＴＭは、この不正ネットワークに出入りするすべてのトラフィックを調べて修正できる。別のやり方は、攻撃者が不正サーバを設定し、それがオンラインであってＤＮＳ要求を処理するために利用可能であることをネットワーク内のすべてのノードに一斉通信することによって、ネットワーク・サービスをハイジャックすることである。さらに別のやり方は、攻撃者が信頼性あるＤＮＳサーバを損なわせて誤った結果を生成させることである。多くの場合、最後に一斉通信するサーバはネットワークの他のノードによって信頼すべきものとみなされる。
【０００５】
ネットワーク情報のこうした信頼性のない、または損なわれたソースを検出するための解決策の１つは、信頼性あるＤＮＳサーバの予め構成されたリストをポーリングして、それらが動作中であって適切な結果を返していることを確認することによって「ヘルス・チェック」を行うＤＮＳウォッチャを使用することである。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながらこの方法にはいくつかの欠点がある。ポーリング動作は追加の余剰なネットワーク・トラフィックを生成し、攻撃者による目標ネットワークの偵察によって発見されるおそれがある。加えて、ポーリング・アプローチは既知のＤＮＳサーバが適切に動作しているかどうかを確認するだけである。特定の既知ＤＮＳサーバをポーリングするという能動的性質のために、ポーリングされる既知のホスト以外のホストによって返されたＤＮＳ解決の正しさを確認することはできない。不正ＤＮＳプロバイダが前もって既知になることはないため、それらはポーリング解決策によってチェックされないままとなる。
【課題を解決するための手段】
【０００７】
一般的に、本発明の局面は、追加のネットワーク・トラフィックを生じず、かつ既知および未知のＤＮＳサーバ両方によって提供されるＤＮＳ解決を監視できる、ネットワーク内の不正ＤＮＳサーバを識別するための受動監視解決策を提供する。
【０００８】
本開示の第１の局面は、不正ドメイン・ネーム・サービス（ＤＮＳ）サーバを識別するための方法を提供する。この方法は、ネットワーク上のトラフィックを受動的に監視するステップと、ネットワーク上のトラフィックにおけるＤＮＳ解決応答を識別するステップであって、このＤＮＳ解決応答はドメイン対インターネット・プロトコル（ｉｎｔｅｒｎｅｔ  ｐｒｏｔｏｃｏｌ：ＩＰ）アドレスのマッピングを含む、ステップと、このＤＮＳ解決応答をドメイン対ＩＰアドレスの既知のマッピングの予め構成されたリストと比較するステップと、この比較に基づいてこのＤＮＳ解決応答が正しいかどうかを判定するステップとを含む。
【０００９】
本開示の第２の局面は、不正ドメイン・ネーム・サービス（ＤＮＳ）サーバを識別するためのシステムを提供する。このシステムは、ネットワーク上のトラフィックを受動的に監視するための監視構成要素と、ネットワーク上のトラフィックにおけるＤＮＳ解決応答を識別するための識別構成要素であって、このＤＮＳ解決応答はドメイン対インターネット・プロトコル（ＩＰ）アドレスのマッピングを含む、識別構成要素と、このＤＮＳ解決応答をドメイン対ＩＰアドレスの既知のマッピングの予め構成されたリストと比較するための比較構成要素と、この比較に基づいてこのＤＮＳ解決応答が正しいかどうかを判定するための判定構成要素とを含む。
【００１０】
本開示の第３の局面は、計算デバイスによって実行されるときに、不正ドメイン・ネーム・サービス（ＤＮＳ）サーバを識別するための方法をコンピュータ・システムに実施させる、（コンピュータ読取り可能記憶媒体において具現化され得る）コンピュータ・プログラムを提供する。この方法は、ネットワーク上のトラフィックを受動的に監視するステップと、ネットワーク上のトラフィックにおけるＤＮＳ解決応答を識別するステップであって、このＤＮＳ解決応答はドメイン対インターネット・プロトコル（ＩＰ）アドレスのマッピングを含む、ステップと、このＤＮＳ解決応答をドメイン対ＩＰアドレスの既知のマッピングの予め構成されたリストと比較するステップと、この比較に基づいてこのＤＮＳ解決応答が正しいかどうかを判定するステップとを含む。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態を実現するために好適なデータ処理システムを示す図である。
【図２】本発明の実施形態に従う、ネットワークの監視を例示する概略的データ・フロー図である。
【図３】本発明の実施形態に従う、不正ＤＮＳサーバの識別を例示する概略的データ・フロー図である。
【図４】本発明の実施形態に従う、予め構成されたＤＮＳ解決テーブルを示す図である。
【図５】本発明の実施形態に従う、不正ＤＮＳサーバを識別する方法に対するフロー・チャートである。
【発明を実施するための形態】
【００１２】
本発明の上記の局面およびその他の局面、利点ならびに目立った特徴は、添付の図面とともに本発明の実施形態を開示する以下の詳細な説明から明らかになるであろう。各図面中、同様の部分には同じ参照符号を付す。
【００１３】
図面は必ずしも縮尺どおりではない。図面は単なる概略的表示であり、本発明の特定のパラメータを描写することは意図されていない。図面は本発明の典型的な実施形態のみを示すことが意図されたものであるため、本発明の範囲を限定するものと考えられるべきではない。図面における同じ番号は同様の構成要素を表す。
【００１４】
上に示されるとおり、本発明の局面は、ネットワークを横切るノード間のトラフィックの流れを受動的に観察し、そのネットワークにおけるスプーフィングされたＤＮＳトラフィックを探すモニタの使用によって、不正ＤＮＳサーバの存在を検出するための解決策を提供する。いくつかの実施形態において、ネットワークはローカル・イントラネットであってもよく、別の実施形態において、ネットワークはインターネットであってもよい。
【００１５】
図面を参照すると、図１は、ネットワーク２００内に存在し得る不正ＤＮＳサーバ２１５の存在を検出するための例示的モニタ１００を示す。そのためにモニタ１００は、不正ＤＮＳサーバ２１５からの無効ＤＮＳ解決応答を識別するために本明細書に記載されるプロセスを行い得るコンピュータ・システム１０２を含む。特に、コンピュータ・システム１０２は不正ＤＮＳサーバ識別プログラム１４０を含む計算デバイス１０４を含むことが示されており、不正ＤＮＳサーバ識別プログラム１４０は本明細書に記載されるプロセスを行うことによって不正ＤＮＳサーバ２１５を識別するために計算デバイス１０４を動作可能にする。
【００１６】
計算デバイス１０４は、処理ユニット１０６（例、１つまたはそれ以上のプロセッサ）と、メモリ１１０と、記憶システム１１８（例、記憶階層）と、入力／出力（ｉｎｐｕｔ／ｏｕｔｐｕｔ：Ｉ／Ｏ）インタフェース構成要素１１４（例、１つまたはそれ以上のＩ／Ｏインタフェースもしくはデバイスまたはその両方）と、通信経路１１２とを含むことが示される。一般的に処理ユニット１０６は、たとえば不正ＤＮＳサーバ識別プログラム１４０などのプログラム・コードを実行し、このプログラム・コードは少なくとも部分的にメモリ１１０内に固定されている。そのために、処理ユニット１０６は単一の処理ユニットを含んでいてもよいし、１つまたはそれ以上の位置の１つまたはそれ以上の処理ユニット間に分散されていてもよい。
【００１７】
メモリ１１０はさらに、プログラム・コードの実際の実行中に用いられるローカル・メモリ、バルク記憶装置（記憶システム１１８）、もしくは実行中にバルク記憶システム１１８からコードを検索しなければならない回数を減らすために少なくともいくつかのプログラム・コードの一時記憶を提供するキャッシュ・メモリ（図示せず）、またはその組み合わせを含んでもよい。このようにメモリ１１０は、磁気媒体、光学媒体、ランダム・アクセス・メモリ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ：ＲＡＭ）、リード・オンリ・メモリ（ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ：ＲＯＭ）、データ・キャッシュ、データ・オブジェクトなどを含むあらゆる公知のタイプのデータ記憶媒体もしくは送信媒体またはその両方を含んでもよい。さらに、処理ユニット１０６と同様、メモリ１１０は１つまたはそれ以上のタイプのデータ記憶装置を含む単一の物理的位置にあってもよいし、さまざまな形の複数の物理的システム間に分散されていてもよい。
【００１８】
プログラム・コードを実行する間、処理ユニット１０６はデータを処理してもよく、その結果として、さらなる処理のためにメモリ１１０もしくはＩ／Ｏインタフェース構成要素１１４またはその両方からの、またはそこへの変換データの読取りもしくは書込みまたはその両方がもたらされてもよい。経路１１２は、コンピュータ・システム１０２の各構成要素間の直接的または間接的な通信リンクを提供する。Ｉ／Ｏインタフェース構成要素１１４は、システム・ユーザ１２０があらゆるタイプの通信リンクを用いてコンピュータ・システム１０２と通信できるようにするために、ヒト・ユーザ１２０がコンピュータ・システム１０２もしくは１つもしくはそれ以上の通信デバイスまたはその両方と対話できるようにする１つまたはそれ以上のヒトＩ／Ｏデバイスを含んでもよい。
【００１９】
そのために、不正ＤＮＳサーバ識別プログラム１４０は、ヒトもしくはシステム・ユーザまたはその両方１２０が不正ＤＮＳサーバ識別プログラム１４０と対話できるようにするインタフェースの組（例、グラフィカル・ユーザ・インタフェース（単数または複数）、アプリケーション・プログラム・インタフェース、もしくはその類似物またはその組み合わせ）を管理できる。さらに不正ＤＮＳサーバ識別プログラム１４０は、あらゆる解決策を用いて、たとえばテーブル２２０（図２〜４）に保存されるデータなどのデータを管理（例、保存、検索、作成、操作、編成、提供など）できる。
【００２０】
いずれの場合にも、コンピュータ・システム１０２は、それにインストールされるたとえば不正ＤＮＳサーバ識別プログラム１４０などのプログラム・コードを実行できる１つまたはそれ以上の汎用計算製造品（例、計算デバイス１０４）を含んでもよい。本明細書において用いられる「プログラム・コード」とは、情報処理能力を有する計算デバイスに、直接的に、または以下の動作すなわち（ａ）別の言語、コードもしくは表記法への変換、（ｂ）異なる材料形式での再生、もしくは（ｃ）復元、またはその組み合わせのあらゆる組み合わせの後に、特定の動作を行わせるための、あらゆる言語、コードまたは表記法の命令のあらゆる集合体を意味することが理解される。そのために、不正ＤＮＳサーバ識別プログラム１４０は、システム・ソフトウェアもしくはアプリケーション・ソフトウェアまたはその両方のあらゆる組み合わせとして具現化されてもよい。いずれの場合にも、コンピュータ・システム１０２の技術的効果は、不正ＤＮＳサーバを識別するために計算デバイス１０４に処理命令を与えることである。
【００２１】
さらに、不正ＤＮＳサーバ識別プログラム１４０は、モジュール１４２〜１５０の組を用いて実現されてもよい。この場合、モジュール１４２〜１５０は、不正ＤＮＳサーバ識別プログラム１４０によって用いられるタスクの組をコンピュータ・システム１０２が行い得るようにでき、かつ不正ＤＮＳサーバ識別プログラム１４０の他の部分とは離れて別々に開発もしくは実現されるか、またはその両方であってもよい。本明細書において用いられる「構成要素（ｃｏｍｐｏｎｅｎｔ）」という用語は、あらゆる解決策を用いてそれとともに記載される機能を実現する、ソフトウェアを伴うかまたは伴わないハードウェアのあらゆる構成を意味し、一方「モジュール」という用語は、あらゆる解決策を用いてそれとともに記載される動作をコンピュータ・システム１０２が実現できるようにするプログラム・コードを意味する。処理構成要素（ユニット）１０６を含むコンピュータ・システム１０２のメモリ１１０の中に固定されるとき、モジュールは動作を実現する構成要素の実質的部分である。それに関わらず、２つまたはそれ以上の構成要素、モジュール、もしくはシステムまたはその組み合わせが、そのそれぞれのハードウェアもしくはソフトウェアまたはその両方の一部／すべてを共有してもよいことが理解される。さらに、本明細書において考察される機能のいくつかは実現されなくてもよいし、追加の機能がコンピュータ・システム１０２の部分として含まれてもよいことが理解される。
【００２２】
コンピュータ・システム１０２が複数の計算デバイス１０４を含むとき、各計算デバイス１０４には不正ＤＮＳサーバ識別プログラム１４０の一部しか固定されなくてもよい（例、１つまたはそれ以上のモジュール１４２〜１５０）。しかしながら、コンピュータ・システム１０２および不正ＤＮＳサーバ識別プログラム１４０は、本明細書に記載されるプロセスを行い得るさまざまな可能な同等コンピュータ・システムを表しているだけであることが理解される。そのために、他の実施形態においては、コンピュータ・システム１０２および不正ＤＮＳサーバ識別プログラム１４０によって提供される機能が、プログラム・コードを有するかまたは有さない汎用ハードウェアもしくは特定目的ハードウェアまたはその両方のあらゆる組み合わせを含む１つまたはそれ以上の計算デバイスによって少なくとも部分的に実現されてもよい。各実施形態において、ハードウェアおよびプログラム・コードが含まれるとき、それらはそれぞれ標準的な工学およびプログラミング技術を用いて作成されてもよい。
【００２３】
コンピュータ・システム１０２が複数の計算デバイス１０４を含むとき、それらの計算デバイスはあらゆるタイプの通信リンクを通じて通信してもよい。さらに、本明細書に記載されるプロセスを行う間に、コンピュータ・システム１０２はあらゆるタイプの通信リンクを用いて１つまたはそれ以上の他のコンピュータ・システムと通信してもよい。いずれの場合にも、通信リンクはさまざまなタイプのワイヤード・リンクもしくはワイヤレス・リンクまたはその両方のあらゆる組み合わせを含んでもよいし、１つまたはそれ以上のタイプのネットワークのあらゆる組み合わせを含んでもよいし、さまざまなタイプの送信技術およびプロトコルのあらゆる組み合わせを用いてもよいし、それらを組み合わせていてもよい。
【００２４】
本明細書において考察されるとおり、不正ＤＮＳサーバ識別プログラム１４０は、コンピュータ・システム１０２が不正ＤＮＳサーバの識別を実施することを可能にする。このために、不正ＤＮＳサーバ識別プログラム１４０は監視モジュール１４２と、識別モジュール１４４と、比較モジュール１４６と、判定モジュール１４８と、警告モジュール１５０とを含むことが示される。
【００２５】
ここで図２〜３を参照すると、モニタ１００が用いられ得るネットワーク環境２００が示されている。図示されるとおり、ネットワーク２００はリクエスタ２０５を含んでもよく、リクエスタ２０５はユーザまたはサーバによって動作されるクライアント・ワークステーションであってもよい。ネットワーク２００には付加的なリクエスタ２０５が含まれていてもよいが、簡略にするために図２〜３のネットワーク２００の描写からは割愛されている。リクエスタ２０５は、特定のホストの英数字のドメイン・ネームを解決して数字のＩＰアドレスにするためのＤＮＳ解決要求２０１を送ってもよい。
【００２６】
図２に示されるとおり、ネットワーク２００に攻撃者が存在しない通常動作条件下では、認可ＤＮＳサーバ２１０がＤＮＳ解決要求２０１を受け取って処理し、ＤＮＳ解決応答２０２を送る。その場合、ＤＮＳ解決応答２０２はドメイン・ネーム対ＩＰアドレスの有効かつ正確なマッピングを含んでもよい。
【００２７】
他の場合には、図３に示されるとおり、攻撃者の不正ＤＮＳサーバ２１５が別の計算システムを詐称する目的でネットワーク２００に存在することがある。この場合、不正ＤＮＳサーバ２１５がＤＮＳ解決要求２０１を受け取って処理し、不正ＤＮＳサーバ２１５がＤＮＳ解決応答２０２を提供する。こうしたＤＮＳ解決応答２０２は、誤ったドメイン・ネーム対ＩＰアドレスのマッピングを含むかもしれず、その結果、機密トラフィックを信頼性のないシステムに配信するスプーフィング攻撃によってネットワーク・トラフィックが誤ってルート指定されるか、またはサービス拒否（ＤＯＳ）攻撃によってネットワーク・トラフィックが妨げられる。
【００２８】
いずれの場合にも、モニタ１００がネットワーク２００上のノード間のネットワーク・トラフィックの流れを観察できるように、モニタ１００はネットワーク２００の戦略的地点に位置決めされる。図１を参照して上に考察したとおり、モニタ１００はモジュール１４２〜１５０を含み、これらのモジュールはコンピュータ・システム１０２によって実行されるときに、ネットワーク・トラフィックの中でも特にＤＮＳ解決要求２０１およびＤＮＳ解決応答２０２を含む、ネットワーク２００上のトラフィックに対する受動監視を行う。
【００２９】
図１〜３を同時に参照すると、モニタ１００の部分である監視モジュール１４２は、ＤＮＳ解決要求２０１およびＤＮＳ解決応答２０２を含む、ネットワーク２００を横切るトラフィックの監視１４３を行う。識別モジュール１４４は、ネットワーク２００上の監視されるトラフィックの中のＤＮＳ解決応答２０２を識別できる。前に言及したとおり、ＤＮＳ解決応答２０２は、リクエスタ２０５から送られたＤＮＳ解決要求２０１に応答したドメイン・ネーム２２５対ＩＰアドレス２３０のマッピングを含む。
【００３０】
ＤＮＳ解決応答２０２が識別されると、比較モジュール１４６は、既知のＤＮＳ解決テーブル２２０に含まれるドメイン・ネームおよびＩＰアドレスの既知のマッピングの予め構成されたリストに保存された既知のマッピングとＤＮＳ解決応答２０２との比較を行うことができる。テーブル２２０に含まれるドメイン・ネーム対ＩＰアドレスのマッピングは、有効であることが既知である。図４に示されるとおり、テーブル２２０に保存されるＩＰアドレス２３０は、特定のＩＰアドレス、たとえばｍｙｂａｎｋ．ｃｏｍというドメインのＩＰアドレスｙｙｙ．ｙｙｙ．ｙｙｙ．ｙｙｙなどとして表されてもよい。他の実施形態において、テーブル２２０に保存されるＩＰアドレス２３０は、少なくとも１つのワイルド・カードを用いたＩＰアドレスの範囲として表されてもよい。ＩＰアドレスの範囲はいくつかのワイルド・カードを含む広いものであってもよく、たとえばｃｏｍｐａｎｙ．ｃｏｍというドメインに対するＩＰアドレス範囲ｘｘｘ．＊．＊．＊などであってもよい。他の実施形態において、ＩＰアドレスの範囲は、たとえばただ１つのワイルド・カードを有するもっと狭いものであってもよく、たとえばｅｍａｉｌ．ｏｒｇというドメインに対するＩＰアドレス範囲ｚｚｚ．ｚｚｚ．ｚｚｚ．１？？などであってもよい。
【００３１】
本発明の実施形態に従うと、テーブル２２０に保存されるマップされたドメイン・ネーム２２５およびＩＰアドレス２３０のリストは、ネットワーク２００のユーザがアクセスし得るドメインまたはリクエスタ２０５がＤＮＳ解決を要求し得るドメインの網羅的リストである必要はない。むしろ、選択された数のホストが代表的サンプルとしてテーブル２２０に含まれていてもよい。いくつかの実施形態において、テーブル２２０はドメインおよびそのそれぞれのＩＰアドレスの予め構成されたリストを含んでもよく、テーブル２２０に含ませるために何を選択するのかについては、ネットワーク・ユーザによってアクセスされる特に機密の情報をホスティングするドメインに基づいていてもよい。他の実施形態において、テーブル２２０はドメインおよびそのそれぞれのＩＰアドレスの予め構成されたリストを含んでもよく、テーブル２２０に含ませるために何を選択するのかについては、ネットワーク２００のユーザが訪れている頻度の高さ、ひいては監視すべきＤＮＳ解決要求および応答のサンプル・プールが大きくなる可能性の高さに基づいていてもよい。
【００３２】
再び図１〜３を参照すると、判定モジュール１４８は、ＤＮＳ解決応答２０２がＩＰアドレス対ドメイン・ネームの正しくかつ有効なマッピングを含んでいるかどうかの判定を行う。この判定は、比較モジュール１４６によって行われる比較に基づいている。ＤＮＳ解決応答２０２におけるマッピングがテーブル２２０に保存されたそれぞれのドメイン・ネームに対するマッピングと一致するとき、ＤＮＳ解決応答２０２は正しいと判定される。このことから、ＤＮＳ解決応答２０２が認可ＤＮＳサーバ２１０（図２）から送られたものであろうことがわかる。ＤＮＳ解決応答２０２におけるマッピングがテーブル２２０におけるそれぞれのドメイン・ネームに対するマッピングと一致しないとき、ＤＮＳ解決応答２０２は無効と判定される。このことから、ＤＮＳ解決応答２０２が不正ＤＮＳサーバ２１５（図３）から送られたものであろうことがわかるであろうし、さらにスプーフィングまたはＤＯＳ攻撃が起こったであろうことがわかるであろう。この場合には、警告モジュール１５０が警告２４０を送って、スプーフィングされたＤＮＳトラフィックをリクエスタ２０５に通知する。さまざまな実施形態において、警告２４０はメッセージ（ｅメール、ＳＭＳなど）、ログ・エントリ、または不審な挙動を記述して注意を喚起するその他の形のセキュリティ事象通知の形を取ってもよい。
【００３３】
前述の方法を図５のフロー・チャートに示している。前述のとおり、モニタはネットワーク上のトラフィックを受動的に監視する。このネットワークを通じて、要求ワークステーションが特定のドメインのＤＮＳ解決を要求する。ＤＮＳサーバによって、ＤＮＳ解決応答がネットワークを通じてリクエスタに戻される。監視されるネットワーク・トラフィックの中からこのＤＮＳ解決応答がモニタによって識別される。識別されると、ＤＮＳ解決応答に含まれるＩＰアドレス対ドメインのマッピングが、ＩＰアドレス対ドメインの既知のマッピングの予め構成されたリストと比較される。ＩＰアドレス対ドメインの既知のマッピングの予め構成されたリストの中にＤＮＳ解決応答の中のドメインもＩＰアドレスも現れないときは、モニタは単純にネットワークの監視に戻る。
【００３４】
ＤＮＳ解決応答の中のドメインまたはＩＰアドレスが、ＩＰアドレス対ドメインの既知のマッピングの予め構成されたリストの中に現れるとき、ＤＮＳ解決応答に含まれるマッピングがＩＰアドレス対ドメインの既知のマッピングの予め構成されたリスト内の対応するマッピングと比較される。マッピングが一致するとき、すなわちＤＮＳ解決応答およびＩＰアドレス対ドメインの既知のマッピングの予め構成されたリストにおいてＩＰアドレスとそれぞれのドメインとが両方とも同じであるときは、そのＤＮＳ解決応答が正しいものであり、それを送ったＤＮＳサーバは認可されたものであると判定できる。しかしマッピングが一致しないとき、すなわちＤＮＳ解決応答およびＩＰアドレス対ドメインの既知のマッピングの予め構成されたリストにおいてドメインが異なるＩＰアドレスに対応しているとき（またはＤＮＳ解決応答およびＩＰアドレス対ドメインの既知のマッピングの予め構成されたリストにおいてＩＰアドレスが異なるドメインに対応しているとき）は、そのＤＮＳ解決応答が無効であると判定できる。こうした場合には、それを送ったＤＮＳサーバが認可されておらず、不正ＤＮＳサーバのおそれがあると結論付けられ得る。この場合は警告が開始され、リクエスタにセキュリティの危険を警告する。
【００３５】
本明細書においては不正ＤＮＳサーバを識別するための方法およびシステムとして示され説明されているが、本発明の局面はさまざまな代替的実施形態をさらに提供することが理解される。たとえば一実施形態において、本発明は少なくとも１つのコンピュータ読取り可能媒体に固定されたコンピュータ・プログラムを提供し、このコンピュータ・プログラムは実行されるときにコンピュータ・システムが不正ＤＮＳサーバの識別を実施することを可能にする。そのためにコンピュータ読取り可能媒体は、本明細書に記載されるプロセスの一部またはすべてを実施するたとえば不正ＤＮＳサーバ識別プログラム１４０（図１）などのプログラム・コードを含む。「コンピュータ読取り可能媒体」という用語は、計算デバイスがそこからプログラム・コードのコピーを認識、再生または別様で通信することができる、現在公知であるかまたは後に開発される１つまたはそれ以上のあらゆるタイプの表現の有形媒体を含むことが理解される。たとえば、コンピュータ読取り可能媒体は、１つまたはそれ以上の携帯型記憶装置製造品、計算デバイスの１つまたはそれ以上のメモリ／記憶構成要素、紙、もしくはその類似品またはその組み合わせを含んでもよい。
【００３６】
別の実施形態において、本発明は、本明細書に記載されるプロセスの一部またはすべてを実施するたとえば不正ＤＮＳサーバ識別プログラム１４０（図１）などのプログラム・コードのコピーを提供する方法を提供する。この場合、コンピュータ・システムは本明細書に記載されるプロセスの一部またはすべてを実施するプログラム・コードのコピーを処理して、第２の別の位置における受信のためにデータ信号の組を生成および送信でき、このデータ信号の組はプログラム・コードの特性集合の１つもしくはそれ以上を有するか、もしくはこのデータ信号の組においてプログラム・コードのコピーを符号化するような態様で変更されているか、またはその両方である。同様に、本発明の実施形態は、本明細書に記載されるプロセスの一部またはすべてを実施するプログラム・コードのコピーを取得する方法を提供し、この方法は、コンピュータ・システムが本明細書に記載されるデータ信号の組を受け取るステップと、このデータ信号の組を翻訳して少なくとも１つのコンピュータ読取り可能媒体に固定されるコンピュータ・プログラムのコピーにするステップとを含む。どちらの場合にも、データ信号の組はあらゆるタイプの通信リンクを用いて送信／受信されてもよい。
【００３７】
さらに別の実施形態において、本発明は不正ＤＮＳサーバを識別するためのシステムを生成する方法を提供する。この場合には、たとえばコンピュータ・システム１０２（図１）などのコンピュータ・システムが得られてもよく（例、作製される、維持される、利用可能にされるなど）、さらに本明細書に記載されるプロセスを行うための１つまたはそれ以上の構成要素が得られて（例、作製される、購入される、使用される、修正されるなど）そのコンピュータ・システムに配置されてもよい。そのために、この配置は以下のステップの１つまたはそれ以上を含んでもよい。（１）計算デバイスにプログラム・コードをインストールするステップ、（２）コンピュータ・システムに１つまたはそれ以上の計算デバイスもしくはＩ／Ｏデバイスまたはその両方を追加するステップ、（３）コンピュータ・システムを本明細書に記載されるプロセスを行い得るように組み込むか、もしくは修正するか、またはその両方を行うステップ、もしくは類似のステップまたはその組み合わせ。
【００３８】
本明細書において用いられる「第１の」、「第２の」などの用語は、いかなる順序、数量または重要性も表しておらず、１つの構成要素と別の構成要素とを区別するために用いられるものであり、さらに本明細書における「ａ」および「ａｎ」という用語は数量の限定を表すものではなく、参照される項目の少なくとも１つの存在を表すものである。数量に関連して用いられる「約」という修飾語は述べられる値を包括するものであり、その状況によって規定される意味を有する（例、特定の数量の測定に関連する誤差の程度を含む）。本明細書において用いられる「（単数または複数）」という接尾辞は、それが修飾する用語の単数形および複数形の両方を含むことが意図されており、それによってその用語の１つまたはそれ以上を含む（例、サーバ（単数または複数）は１つまたはそれ以上のサーバを含む）。本明細書に開示される範囲は包括的であり、独立に組み合わせ可能である（例、「最大約３個のワイルド・カード、またはより特定的に、約１個のワイルド・カードから約３個のワイルド・カード」という範囲は、「約１個のワイルド・カードから約２個のワイルド・カード」などの範囲の端点およびすべての中間値を包括している）。
【００３９】
本発明のさまざまな実施形態の説明は例示の目的のために提供されたものであり、開示される実施形態に対して網羅的または限定的になることは意図されていない。記載される実施形態の範囲および趣旨から逸脱することなく、通常の当業者には多くの修正形および変更形が明らかになるであろう。本明細書において用いられる用語は、実施形態の原理、実際の適用、もしくは市場において見出される技術からの技術的改善点を最もよく説明するため、または他の通常の当業者が本明細書に開示される実施形態を理解できるようにするために選択されたものである。
【符号の説明】
【００４０】
１００  モニタ
１４３  監視
２００  ネットワーク
２０１  ＤＮＳ解決要求
２０２  ＤＮＳ解決応答
２０５  リクエスタ
２１０  認可ＤＮＳ
２１５  不正ＤＮＳ
２２０  テーブル
２４０  警告
【図１】
2013247674.tif 000003
【図２】
2013247674.tif 000004
【図３】
2013247674.tif 000005
【図４】
2013247674.tif 000006
【図５】
2013247674.tif 000007