(57)【特許請求の範囲】
【請求項１】
システムであって、
プロセッサであって、
プライベートネットワーク上のクライアントからのＤＮＳ（ドメイン名システム）要求をインターセプトし、前記プロセッサは前記プライベートネットワークに関連する通信をインターセプトするように構成されているセキュリティアプライアンスの一部であり、前記ＤＮＳ要求はＤＮＳサーバに向けられ、
前記ＤＮＳ要求からドメイン名を抽出し、
ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断することであって、前記クライアントから受信された未知のドメイン名を解決するための前記ＤＮＳ要求を含む少なくとも所定数のＤＮＳ要求について判断することを備え、
前記クライアントからの前記ＤＮＳ要求に対して、存在しないまたは利用不可能なＩＰ（インターネットプロトコル）アドレスを備えるスプーフィングされたＤＮＳ応答で応答し、
どのＤＮＳサーバに対する前記ＤＮＳ要求の転送をもブロックする
ように構成されているプロセッサと、
前記プロセッサに接続され、前記プロセッサに命令を提供するように構成されているメモリ
を備えるシステム。
【請求項２】
請求項１に記載のシステムにおいて、前記プロセッサは、さらに、前記ＤＮＳ要求から抽出された前記ドメイン名を、ドメイン名のリストまたはデータベースと比較するように構成されている、システム。
【請求項３】
請求項１に記載のシステムにおいて、前記プロセッサは、さらに、前記ドメイン名のカテゴリまたは分類を決定するように構成されている、システム。
【請求項４】
請求項１に記載のシステムにおいて、ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断することは、前記ドメイン名がブロックリストに含まれていると判断することを含む、システム。
【請求項５】
請求項４に記載のシステムにおいて、前記ブロックリストは、１組のドメイン名へのアクセスを制限するための企業ポリシーの一部である、システム。
【請求項６】
請求項４に記載のシステムにおいて、前記ブロックリストは、１組のユーザに関連付けられている、システム。
【請求項７】
請求項１に記載のシステムにおいて、ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断することは、前記ドメイン名がブラックリストに含まれていると判断することを含む、システム。
【請求項８】
請求項７に記載のシステムにおいて、前記ブラックリストは、１組の疑いのある、または悪意のあるドメイン名を含む、システム。
【請求項９】
請求項１に記載のシステムにおいて、前記プロセッサは、さらに、前記未知のドメイン名に対して疑いのあるものまたは悪意のあるものとしてフラグを立てるように構成されている、システム。
【請求項１０】
プロセッサを用いて実行される方法であって、
プライベートネットワーク上のクライアントからのＤＮＳ（ドメイン名システム）要求をインターセプトし、前記プロセッサは前記プライベートネットワークに関連する通信をインターセプトするように構成されているセキュリティアプライアンスの一部であり、前記ＤＮＳ要求はＤＮＳサーバに向けられ、
前記ＤＮＳ要求からドメイン名を抽出し、
ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断することであって、前記クライアントから受信された未知のドメイン名を解決するための前記ＤＮＳ要求を含む少なくとも所定数のＤＮＳ要求について判断することを備え、
前記クライアントからの前記ＤＮＳ要求に対して、存在しないまたは利用不可能なＩＰ（インターネットプロトコル）アドレスを備えるスプーフィングされたＤＮＳ応答で応答し、
どのＤＮＳサーバに対する前記ＤＮＳ要求の転送をもブロックすることを備える、方法。
【請求項１１】
請求項１０に記載の方法において、さらに、前記ＤＮＳ要求から抽出された前記ドメイン名を、ドメイン名のリストまたはデータベースと比較することを含む、方法。
【請求項１２】
請求項１０に記載の方法において、さらに、前記ドメイン名のカテゴリまたは分類を決定することを含む、方法。
【請求項１３】
請求項１０に記載の方法において、ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断することは、前記ドメイン名がブロックリストまたはブラックリストに含まれていると判断することを含む、方法。
【請求項１４】
請求項１３に記載の方法において、前記ブラックリストは、１組の疑いのある、または悪意のあるドメイン名を含む、方法。
【請求項１５】
請求項１０に記載の方法において、さらに、前記未知のドメイン名に対して疑いのあるものまたは悪意のあるものとしてフラグを立てることを含む、方法。
【請求項１６】
コンピュータプログラムであって、
プライベートネットワーク上のクライアントからのＤＮＳ（ドメイン名システム）要求をインターセプトする機能と、前記コンピュータプログラムは前記プライベートネットワークに関連する通信をインターセプトするように構成されているセキュリティアプライアンスの一部であり、前記ＤＮＳ要求はＤＮＳサーバに向けられ、
前記ＤＮＳ要求からドメイン名を抽出する機能と、
ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断する機能であって、前記クライアントから受信された未知のドメイン名を解決するための前記ＤＮＳ要求を含む少なくとも所定数のＤＮＳ要求について判断することを備え、
前記クライアントからの前記ＤＮＳ要求に対して、存在しないまたは利用不可能なＩＰ（インターネットプロトコル）アドレスを備えるスプーフィングされたＤＮＳ応答で応答する機能と、
どのＤＮＳサーバに対する前記ＤＮＳ要求の転送をもブロックする機能と
をコンピュータによって実現させるコンピュータプログラム。
【請求項１７】
請求項１６に記載のコンピュータプログラムは、さらに、前記未知のドメイン名に対して疑いのあるものまたは悪意のあるものとしてフラグを立てる機能をコンピュータによって実現させる、コンピュータプログラム。
【発明の詳細な説明】
【背景技術】
【０００１】
ＵＲＬフィルタリングなど既存のコンテンツフィルタリング技法は、典型的には、通信フローのＨＴＴＰ段階で行われる。多くのそのような場合に、より低レベルの通信が無駄に行われることがある。さらに、疑いのある、または悪意のある活動のいくつかの形態は、ＨＴＴＰ段階では検出可能でないことがある。
【０００２】
本発明の様々な実施形態を、以下の詳細な説明および添付図面で開示する。
【図面の簡単な説明】
【０００３】
【図１】リソースを求めるクライアント要求の実現に関係付けられる例示的な通信を示す高レベルブロック図である。
【０００４】
【図２】ＤＮＳ通信が監視および解析されるネットワーク環境の一実施形態を示す図である。
【０００５】
【図３】セキュリティアプライアンスの一実施形態に含まれることがある物理的な構成要素を図示する高レベルブロック図である。
【０００６】
【図４】ドメイン名フィルタリングのため、およびポリシーを施行するためにＤＮＳ通信を使用するためのプロセスの一実施形態を示す図である。
【発明を実施するための形態】
【０００７】
本発明は、プロセス、装置、システム、組成物、コンピュータ可読記憶媒体上で具現化されるコンピュータプログラム製品、および／またはプロセッサ（処理装置）、例えば、プロセッサに接続されているメモリに記憶された命令および／またはメモリによって提供される命令を実行するように構成されているプロセッサとしての実装を含めた多くの様式で実装することができる。本明細書では、これらの実装形態、または本発明が取ることができる任意の他の形態を技法と呼ぶことがある。一般に、開示するプロセスのステップの順序は、本発明の範囲内で変えることができる。特に指定のない限り、タスクを実施するように構成されているものとして述べるプロセッサやメモリなどの構成要素は、所与の時点で一時的にそのタスクを実施するように構成される汎用構成要素としても、そのタスクを実施するように製造された専用構成要素としても実装することができる。本明細書で使用するとき、用語「プロセッサ」は、コンピュータプログラム命令などのデータを処理するように構成された１つまたは複数のデバイス、回路、および／または処理コアを表す。
【０００８】
以下に、本発明の１つまたは複数の実施形態の詳細な説明を、本発明の原理を例示する添付図面と共に提供する。そのような実施形態に関連付けて本発明を説明するが、本発明は、いかなる実施形態にも限定されない。本発明の範囲は、特許請求の範囲によってのみ限定され、本発明は、多くの代替形態、修正形態、および均等形態を包含する。本発明を完全に理解できるように、以下の説明では、いくつかの具体的な詳細を述べる。これらの詳細は、例として提供するものであり、本発明は、これらの具体的な詳細のいくつかまたはすべてを伴わずに特許請求の範囲に従って実施することもできる。分かりやすくするために、本発明に関係付けられる技術分野で知られている技術要素は、本発明が不要に曖昧にならないように、詳細には説明していない。
【０００９】
図１は、リソースを求めるクライアント要求の実現に関係付けられる例示的な通信を示す高レベルブロック図である。ネットワーク環境１００を構成する様々なコンポーネントが、任意の適切な通信プロトコルを使用して、１つまたは複数のプライベートおよび／またはパブリックネットワークを介して通信する。一例では、ＵＲＬ（ユニフォームリソースロケータ）が、望みのリソースを検索するために、クライアント１０２でウェブブラウザに入力される。そのような場合、クライアント１０２のウェブブラウザは、要求をＤＮＳ（ドメイン名システム）サーバ１０４に転送して、対応するＩＰ（インターネットプロトコル）アドレスにＵＲＬのドメイン名を解決する。ＤＮＳサーバ１０４は、例えば、対応するＩＰアドレスにドメイン名を解決するためにクライアント１０２が使用するように構成されている名前サーバを備え得る。ＩＰアドレスへの要求されたドメイン名のマッピングが、既にＤＮＳサーバ１０４に存在する（例えばキャッシュされている）、またはドメイン名システムの１つまたは複数の他の名前サーバにコンタクトすることによってＤＮＳサーバ１０４によって決定されている場合、与えられた例で示されるように、ＤＮＳサーバ１０４は、対応するＩＰアドレスをクライアント１０２に提供することで応答する。いくつかの場合には、ＤＮＳサーバ１０４は、クライアント１０２がリダイレクトされている名前サーバを備えることがある。例えば、ＩＰアドレスへの要求されたドメイン名のマッピングが、要求が元々転送されたＤＮＳサーバに既に存在していない場合、そのＤＮＳサーバは、クライアント１０２に対して、望みのドメイン名を解決することが可能であることがある別のＤＮＳサーバ１０４のＩＰアドレスで応答することがある。要求されたドメイン名が、ドメイン名システムに登録されていない場合、要求されたドメイン名が無効である、または存在しないことを示すエラーメッセージが、ＤＮＳサーバ１０４によってクライアント１０２に提供される。クライアント１０２とＤＮＳサーバ１０４とは、例えば、ＤＮＳプロトコルまたはメッセージングを使用して通信することができる。要求されたドメイン名に関する有効なＩＰアドレスの受信に応答して、クライアント１０２は、望みのリソースを要求するために、そのＩＰアドレスを使用して、対応するコンテンツサーバ１０６に接続する。コンテンツサーバ１０６は、要求されたリソースがコンテンツサーバ１０６で利用可能である場合には、要求されたリソースで応答し、または、要求されたリソースがコンテンツサーバ１０６で利用可能でない場合には、エラーメッセージで、または別のコンテンツサーバへのリダイレクトで応答する。クライアント１０２とコンテンツサーバ１０６とは、ＨＴＴＰ（ハイパーテキスト転送プロトコル）、ＳＳＬ（セキュアソケットレイヤー）、ＦＴＰ（ファイル転送プロトコル）など任意の１つまたは複数の適切なプロトコルを使用して通信することができる。
【００１０】
一般に、クライアントがマルウェアに感染するのを防止すること、および、クライアントがマルウェアによって感染している時、マルウェアをクライアントからできるだけ早急に除去することができるように判断することが望ましい。例えば、マルウェアに侵入されているクライアントは、関連のコマンドおよび制御サーバとの通信または通信試行によって少なくとも一部識別することができる。ＵＲＬフィルタリングを含めたコンテンツフィルタリングを使用して、クライアントによって開始されるＨＴＴＰ通信を監視することによって、既知の悪意のあるドメインとの通信を検出してブロックすることができる。多くの場合、ＨＴＴＰ以外の通信プロトコルを監視して、悪意のある活動の試行をできるだけ早期に検出してブロックすることができるようにすることが有利であることがある。本明細書で開示するように、いくつかの実施形態では、ＤＮＳ通信は、疑わしいまたは既知の悪意のあるドメインとの通信の試行を検出してブロックするように監視および解析される。そのような通信を試行するクライアントを、マルウェアに関してスキャンする、および／または、感染していることが分かった場合にはサニタイズすることができる。さらに、ＤＮＳ通信は、様々なユーザがウェブサイトの特定のカテゴリにアクセスするのを制限するなどの組織ポリシーを実施するためにさらに使用することができる。
【００１１】
ＤＮＳ通信の監視は、ドメイン名システムで現在有効でない、またはドメイン名システムに登録されていない悪意のあるドメインへの接続の試行を識別するのに有用であることがある。そのようなドメイン名への接続の試行は、ＨＴＴＰレベルでＵＲＬフィルタリングしか使用されない場合には検出されない。なぜなら、そのような場合、ドメイン名は、ＩＰアドレスに解決することができず、したがってＨＴＴＰ接続を試行することができないからである。ボットネットに含まれるクライアントは、関連のボットマスタと定期的に通信する。検出を逃れるために、ドメインフラクシング（ｄｏｍａｉｎ  ｆｌｕｘｉｎｇ）が使用されることがある。そのような場合、例えば、任意の所与の日に、ボット（ロボット）は、非常に多数（例えば、数百）のドメイン名に関してＤＮＳクエリを生成することがあり、そのドメイン名のうち、０または複数のＤＮＳクエリがその日に実際に有効であり、またはアクティブであり、ボットマスタの対応するＩＰアドレスに解決可能である。ＤＮＳ通信の監視は、そのような挙動の検出を容易にし、それに応答して、１つまたは複数の適切なアクションを行うことができ、そのようなアクションは、例えば、疑わしいまたは悪意のあるドメイン名に関するＤＮＳクエリのブロック、疑わしいまたは悪意のあるドメイン名の学習、ならびに感染したクライアントの発見および除去（サニタイズ）などである。
【００１２】
図２は、ＤＮＳ通信が監視および解析されるネットワーク環境の一実施形態を示す。そのような監視および解析されるＤＮＳ通信は、民間企業または組織ネットワーク２００内でポリシーを施行するために使用することができる。図示されるように、企業ネットワーク２００は、複数のクライアントデバイス２０２と、企業ＤＮＳサーバ２０４とを含む。１つまたは複数のクライアント２０２は、ＩＰアドレスにドメイン名を解決するために企業ＤＮＳサーバ２０４を使用するように構成されることがある。クライアント２０２との通信は、セキュリティアプライアンス２０６を通過する。例えば、クライアント２０２と企業ＤＮＳサーバ２０４との通信、またはクライアント２０２と、外部コンテンツサーバ２０８もしくはＤＮＳサーバ２１０など外部リソースとの通信が、セキュリティアプライアンス２０６を通過する。企業ＤＮＳサーバ２０４は、ドメイン名を解決するために１つまたは複数の外部ＤＮＳサーバ２１０と通信することができ、企業と外部ＤＮＳサーバとのそのような通信も、セキュリティアプライアンス２０６を通過する。企業ネットワーク２００内部のデバイスと、企業ネットワーク２００外部のデバイスとの通信は、外部ネットワーク２１２を介して容易にされ、そのような外部ネットワーク２１２は、例えば、ＨＴＴＰ、ＳＳＬ、ＦＴＰ、ＤＮＳなど任意の１つまたは複数の適切な通信プロトコルを使用するインターネットである。様々なクライアント２０２、ＤＮＳサーバ２０４／２１０、およびコンテンツサーバ２０８の間の通信は、図１に関して説明したように行うことができる。
【００１３】
いくつかの実施形態では、セキュリティアプライアンス２０６は、受信する様々な通信に対してポリシーまたは規則を施行するように構成されたファイアウォールを備える。例えば、セキュリティアプライアンス２０６は、クライアント２０２、企業ＤＮＳサーバ２０４、および／または外部ＤＮＳサーバ２１０の間のＤＮＳ通信をインターセプトするように、およびそのような通信に基づいてポリシーを施行するように構成されることがある。他のタイプのデバイスが、セキュリティアプライアンス２０６によって行われるものとして本明細書で述べる機能を提供するように構成されることもある。例えば、ルータ、ゲートウェイ、侵入検知システム、侵入防止システム、または他の適切なデバイスが、ＤＮＳ通信をインターセプトし、そのような通信に基づいて適切なポリシーを施行するように構成されることがある。セキュリティアプライアンス２０６は、図２の例では個別のデバイスとして示されているが、他の実施形態では、ホストベースのソリューションとして、クライアントデバイス２０２上に直接実装されることもある。
【００１４】
図２でさらに示すように、ドメイン名のリストまたはデータベース２１４が保守されており、セキュリティアプライアンス２０６によってアクセス可能である。いくつかの場合には、データベース２１４は、疑わしいおよび／または既知の悪意のあるドメイン名のブラックリストを含む。任意の適切な表示を使用して、疑わしいものまたは悪意のあるものとしてドメイン名を分類することができる。例えば、ドメイン名は、ドメイン名システムに新たに（例えば３０日以内に）登録された場合、ダイナミックＤＮＳホストサービスによってホストされる場合、ファストフラックス（ｆａｓｔｆｌｕｘ）ドメインに属する場合、既存の既知の悪意のあるドメイン名と同じＩＰアドレスに解決する場合、異常に長い（例えば６４バイトよりも大きい）場合、既知の悪意のあるＤＮＳサーバによってホストされる場合などに、疑わしいまたは悪意のあるものとして分類されることがある。いくつかの実施形態では、データベース２１４はまた、他の疑わしいものでない、または悪意のあるものでないドメイン名も含む。いくつかの実施形態では、データベース２１４に含まれるドメイン名は、マルウェア、ソーシャルネットワーキング、ニュース、スポーツ、エンターテインメントなどのカテゴリによってインデックスされる。異なるカテゴリのドメイン名に関して、セキュリティアプライアンス２０６によって異なるポリシーが施行されることがあり、異なるユーザが異なるポリシーを課されることがある。例えば、セキュリティアプライアンス２０６は、ソーシャルネットワーキングサイト上で企業の公的な存在を維持する選択された数名のユーザ以外すべての者が、企業ネットワーク２００内部からソーシャルネットワーキングサイトにアクセスするのを禁止するように構成されることがある。さらに、セキュリティアプライアンス２０６は、企業ネットワーク２００内の任意のユーザが、データベース２１４内でマルウェアとしてカテゴリ分けされている任意のドメイン名など、疑わしいまたは悪意のあるサイトにアクセスするのを禁止するように構成されることがある。データベース２１４は、パブリックドメインから知られているドメイン名、または例えばセキュリティアプライアンス２０６によって学習されたドメイン名を追加することができ、新たなドメイン名が分かったときに更新することができる。もはや有効でないものとして識別された疑わしいまたは既知の悪意のあるドメイン名は、例えば、ドメイン名フラクシング（ｄｏｍａｉｎ  ｎａｍｅ  ｆｌｕｘｉｎｇ）に対応するために、データベース２１４からパージされない、または少なくとも即時にはパージされないことがある。
【００１５】
いくつかの実施形態では、クライアント２０２、企業ＤＮＳサーバ２０４、および／または外部ＤＮＳサーバ２１０の間のＤＮＳ要求が、セキュリティアプライアンス２０６によって監視および解析される。セキュリティアプライアンス２０６によって受信されたＤＮＳ要求は、クエリのドメイン名を抽出するためにパースされる。抽出されたドメイン名が、データベース２１４に記憶されているドメイン名と比較されて、例えば、要求されたドメイン名がブラックリストまたはブロックリストに含まれているかどうか判断する。いくつかの場合には、要求から抽出されたドメイン名とドメイン名のデータベース２１４との比較の出力は、カテゴリを含む。決定されたカテゴリ、および／またはＤＮＳ要求を開始するユーザまたはクライアントなどの因子に基づいて、企業ポリシーを施行するためにセキュリティアプライアンス２０６によって様々なアクションを行うことができる。例えば、ニュースサービスとしてカテゴリ分けされたドメイン名に対する要求は、要求が宛てられたＤＮＳサーバ２０４または２１０にルーティングすることができ、それにより、ユーザ／クライアントは、関連のサイトにアクセスすることができ、一方、ソーシャルネットワーキングサイトとしてカテゴリ分けされたドメイン名に対する、そのようなサイトへのアクセスを許可されていないユーザからの要求はブロックされ、要求が宛てられたＤＮＳサーバ２０４または２１０にルーティングされないことがある。いくつかの実施形態では、ブロックリスト（例えば、ソーシャルネットワーキングとしてカテゴリ分けされたドメイン名）またはブラックリスト（例えば、悪意のあるもの、または悪意のある可能性があるものとしてカテゴリ分けされたドメイン名）に含まれているドメイン名に対する要求は、ブロックされ、要求が宛てられたＤＮＳサーバ２０４または２１０にルーティングされない。代わりに、セキュリティアプライアンス２０６によって、要求するユーザまたはクライアントに、任意の適切な応答をディスパッチすることができる。例えば、要求するクライアントに、エラーまたはアクセス拒否メッセージが送信されることがある。あるいは、ＤＮＳ応答は、セキュリティアプライアンス２０６によってスプーフィングされる（なりすまされる）ことがあり、要求するクライアントに偽のＤＮＳ応答パケットが送信されることがある。いくつかのそのような場合には、スプーフィングされる応答は、存在しない、または利用可能でないＩＰアドレスを備える。
【００１６】
特定のドメイン名へのアクセスのブロックに加えて、受信されたＤＮＳトラフィックに基づいて、疑いのある、または悪意のある新たなドメイン名がセキュリティアプライアンス２０６によって学習されることがあり、データベース２１４を更新または追加するために使用されることがある。ＤＮＳ要求に加えて、いくつかの実施形態では、セキュリティアプライアンス２０６は、同様に、ＤＮＳサーバ２０４および２１０などＤＮＳサーバから受信される、ＤＮＳ要求に対する応答を監視および解析するように構成されることもある。例えば、未知のドメイン名（すなわちデータベース２１４に含まれていないドメイン名）に対する少なくとも所定数のＤＮＳ要求が連続して同じクライアントから受信される場合、特に、１つまたは複数のＤＮＳサーバからのそのようなＤＮＳ要求に対する少なくとも所定数の応答が、要求されたドメイン名が無効である、または存在しないことを示すときには、要求されたドメイン名は、疑いのあるものまたは悪意のあるものとしてフラグを立てられることがある。さらに、クライアントによる疑わしい挙動（例えば、多数の疑わしい、既知の悪意のある、および／または存在しないドメイン名に対するＤＮＳルックアップの試行）を使用して、クライアントがマルウェアに侵入されていることを導き出し、クライアントをサニタイズするために適正なアクションを取ることができる。
【００１７】
図３は、セキュリティアプライアンスの一実施形態に含まれることがある物理的な構成要素を図示する高レベルブロック図である。いくつかの実施形態では、図３のセキュリティアプライアンス３００は、図２のセキュリティアプライアンス２０６を備える。与えられた例では、セキュリティアプライアンス３００は、高性能ＣＰＵ（中央処理装置）３０２と、ＲＡＭ（ランダムアクセスメモリ）３０４とを含む。さらに、セキュリティアプライアンス３００は、記憶装置３０６（１つまたは複数のハードディスクドライブなど）を含み、記憶装置３０６は、ポリシーおよび他の構成情報を記憶するために使用することができる。いくつかの実施形態では、図２のデータベース２１４などドメイン名のデータベースが、記憶装置３０６に記憶される。また、セキュリティアプライアンス３００は、１つまたは複数の任意選択のハードウェアアクセラレータを含むこともある。例えば、セキュリティアプライアンス３００は、暗号化および解読操作を行うように構成された暗号エンジン３０８、および／または、署名マッチングを行うように構成され、ネットワーク処理装置として働くように構成され、および／または他の専用のタスクを行うように構成された１つまたは複数のＦＰＧＡ（フィールドプログラマブルゲートアレイ）３１０を含むことがある。
【００１８】
図４は、ドメイン名フィルタリングのため、およびポリシーを施行するためにＤＮＳ通信を使用するためのプロセスの一実施形態を示す。いくつかの実施形態では、図４のプロセス４００は、図２のセキュリティアプライアンス２０６、または図３のセキュリティアプライアンス３００などのセキュリティアプライアンスによって使用される。プロセス４００は、ステップ４０２から始まり、ステップ４０２では、ＤＮＳ要求が受信される。いくつかの実施形態では、ステップ４０２で受信されたＤＮＳ要求は、図２のクライアント２０２などのクライアント、または図２のＤＮＳサーバ２０４などの企業または組織ＤＮＳサーバからのＤＮＳクエリを含む。ステップ４０４では、ステップ４０２で受信されたＤＮＳ要求がパースされて、要求からドメイン名を抽出する。ステップ４０６では、ステップ４０４で抽出されたドメイン名が、図２のデータベース２１４などのドメイン名リストまたはデータベースと比較され、またはそれとマッチングされる。いくつかの実施形態では、そのようなリストまたはデータベース内のドメイン名は、カテゴリに従って編成されている。いくつかのそのような場合には、ステップ４０６は、抽出されたドメイン名と関連付けられるカテゴリを識別または決定することを含む。抽出されたドメイン名の識別されたカテゴリ分け、企業セキュリティもしくはアクセスポリシー、および／またはユーザ許可に基づいて、ステップ４０８では、抽出されたドメイン名が、拒否または許可として分類される。例えば、抽出されたドメイン名がブラックリストに含まれている（例えば、疑いのあるものまたは悪意のあるものとしてカテゴリ分けされている）、および／またはブロックリストに含まれている（例えば、アクセスが禁止されているカテゴリにカテゴリ分けされている）ので、拒否として分類された場合、受信されたＤＮＳ要求が（例えば、パケットキャプチャによって）ブロックされ、ステップ４１０では、関連のセキュリティおよび／またはアクセスポリシーを施行するために１つまたは複数の適切なアクションが行われる。例えば、アクションは、エラーメッセージの送信、アクセス拒否メッセージの送信、ＤＮＳ要求に対するＤＮＳ応答のスプーフィング（存在しないまたは無効のＩＰアドレスを備える）などを含むことがある。抽出されたドメイン名へのアクセスが許可されている、および／または抽出されたドメイン名が未知であるので、許可として分類される場合、ステップ４１２では、受信されたＤＮＳ要求は、それが元々宛てられたＤＮＳサーバに転送される。あるいは、いくつかの実施形態では、抽出されるドメイン名は、未知である場合には拒否として分類され、ＤＮＳ要求がブロックされ、ステップ４１０で適切なアクションが行われる。
【００１９】
ＤＮＳトラフィックのすべて、または少なくともかなりのサブセットが、図２のセキュリティアプライアンス２０６などのセキュリティアプライアンスを通過するので、そのようなセキュリティアプライアンスは、ＤＮＳ通信を監視および解析し、企業セキュリティおよび／またはアクセスポリシーを投入するために適した点（ポイント）を提供する。さらに、ＤＮＳ通信から抽出されたドメイン名に基づくドメイン名フィルタリングは、より早期の通信段階で（例えば、ＨＴＴＰ段階ではなくＤＮＳ段階で）、特定のドメインへのアクセスを検出および／またはブロックすることができる機能を提供する。さらに、ＤＮＳベースのマルウェア検出およびフィルタリングは、疑いのある、および／または悪意のあるドメイン名、ならびに感染したクライアントをより早急に識別できるようにする。
【００２０】
前述の実施形態は、理解しやすいようにいくらか詳細に説明してきたが、本発明は、提示した詳細に限定されない。本発明を実施する多くの代替の方法が存在する。開示した実施形態は例示であり、限定ではない。
適用例１：システムであって、
プロセッサであって、
ＤＮＳ（ドメイン名システム）要求を受信し、
前記ＤＮＳ要求からドメイン名を抽出し、
ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断し、
前記ＤＮＳ要求をブロックする
ように構成されているプロセッサと、
前記プロセッサに接続され、前記プロセッサに命令を提供するように構成されているメモリ
を備えるシステム。
適用例２：適用例１に記載にシステムにおいて、前記プロセッサは、さらに、前記ＤＮＳ要求から抽出された前記ドメイン名を、ドメイン名のリストまたはデータベースと比較するように構成されている、システム。
適用例３：適用例１に記載にシステムにおいて、前記プロセッサは、さらに、前記ドメイン名のカテゴリまたは分類を決定するように構成されている、システム。
適用例４：適用例１に記載にシステムにおいて、ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断することは、前記ドメイン名がブロックリストに含まれていると判断することを含む、システム。
適用例５：適用例４に記載にシステムにおいて、前記ブロックリストは、１組のドメイン名へのアクセスを制限するための企業ポリシーの一部である、システム。
適用例６：適用例４に記載にシステムにおいて、前記ブロックリストは、１組のユーザに関連付けられている、システム。
適用例７：適用例１に記載にシステムにおいて、ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断することは、前記ドメイン名がブラックリストに含まれていると判断することを含む、システム。
適用例８：適用例７に記載にシステムにおいて、前記ブラックリストは、１組の疑いのある、または悪意のあるドメイン名を含む、システム。
適用例９：適用例１に記載にシステムにおいて、前記プロセッサは、さらに、前記ＤＮＳ要求に対するＤＮＳ応答をスプーフィングするように構成されている、システム。
適用例１０：適用例９に記載にシステムにおいて、前記スプーフィングされたＤＮＳ応答は、存在しないまたは無効のＩＰ（インターネットプロトコル）アドレスを備える、システム。
適用例１１：適用例１に記載にシステムにおいて、前記プロセッサは、さらに、前記ＤＮＳ要求に対してエラーまたはアクセス拒否メッセージで応答するように構成されている、システム。
適用例１２：方法であって、
ＤＮＳ（ドメイン名システム）要求を受信し、
前記ＤＮＳ要求からドメイン名を抽出し、
ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断し、
前記ＤＮＳ要求をブロックすることを備える、方法。
適用例１３：適用例１２に記載の方法において、さらに、前記ＤＮＳ要求から抽出された前記ドメイン名を、ドメイン名のリストまたはデータベースと比較することを含む、方法。
適用例１４：適用例１２に記載の方法において、さらに、前記ドメイン名のカテゴリまたは分類を決定することを含む、方法。
適用例１５：適用例１２に記載の方法において、ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断することは、前記ドメイン名がブロックリストまたはブラックリストに含まれていると判断することを含む、方法。
適用例１６：適用例１５に記載の方法において、前記ブラックリストは、１組の疑いのある、または悪意のあるドメイン名を含む、方法。
適用例１７：適用例１２に記載の方法において、さらに、前記ＤＮＳ要求に対するＤＮＳ応答をスプーフィングすることを含む、方法。
適用例１８：適用例１７に記載の方法において、前記スプーフィングされたＤＮＳ応答は、存在しないまたは無効のＩＰ（インターネットプロトコル）アドレスを備える、方法。
適用例１９：適用例１２に記載の方法において、さらに、前記ＤＮＳ要求に対してエラーまたはアクセス拒否メッセージで応答することを含む、方法。
適用例２０：コンピュータプログラムであって、
ＤＮＳ（ドメイン名システム）要求を受信する機能と、
前記ＤＮＳ要求からドメイン名を抽出する機能と、
ポリシーに基づいて、前記ドメイン名へのアクセスが許可されていないと判断する機能と、
前記ＤＮＳ要求をブロックする機能と
をコンピュータによって実現させるコンピュータプログラム。
【図１】
0006006788.tif 000002
【図２】
0006006788.tif 000003
【図３】
0006006788.tif 000004
【図４】
0006006788.tif 000005