特許第5886422号(P5886422)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ マカフィー, インコーポレイテッドの特許一覧

特許5886422プロトコルフィンガープリント取得および評価相関のためのシステム、装置、プログラム、および方法
<>
  • 特許5886422-プロトコルフィンガープリント取得および評価相関のためのシステム、装置、プログラム、および方法 図000002
  • 特許5886422-プロトコルフィンガープリント取得および評価相関のためのシステム、装置、プログラム、および方法 図000003
  • 特許5886422-プロトコルフィンガープリント取得および評価相関のためのシステム、装置、プログラム、および方法 図000004
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5886422
(24)【登録日】2016年2月19日
(45)【発行日】2016年3月16日
(54)【発明の名称】プロトコルフィンガープリント取得および評価相関のためのシステム、装置、プログラム、および方法
(51)【国際特許分類】
   H04L 12/66 20060101AFI20160303BHJP
   G06F 21/56 20130101ALI20160303BHJP
【FI】
   H04L12/66 B
   G06F21/56 350
【請求項の数】26
【全頁数】13
(21)【出願番号】特願2014-514938(P2014-514938)
(86)(22)【出願日】2012年6月27日
(65)【公表番号】特表2014-524169(P2014-524169A)
(43)【公表日】2014年9月18日
(86)【国際出願番号】US2012044453
(87)【国際公開番号】WO2013003493
(87)【国際公開日】20130103
【審査請求日】2013年12月6日
(31)【優先権主張番号】13/170,163
(32)【優先日】2011年6月27日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】505418238
【氏名又は名称】マカフィー, インコーポレイテッド
(74)【代理人】
【識別番号】110000877
【氏名又は名称】龍華国際特許業務法人
(72)【発明者】
【氏名】アルペロビッチ、ドミトリ
(72)【発明者】
【氏名】ブ、ジェン
(72)【発明者】
【氏名】ディール、デビッド フレデリック
(72)【発明者】
【氏名】クラセル、スベン
【審査官】 菊地 陽一
(56)【参考文献】
【文献】 特開2009−296036(JP,A)
【文献】 国際公開第2010/008825(WO,A1)
【文献】 特開2005−182640(JP,A)
【文献】 特許第4509904(JP,B2)
【文献】 特開2009−087208(JP,A)
【文献】 米国特許第7712134(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/66
G06F 21/56
(57)【特許請求の範囲】
【請求項1】
ネットワーク接続を介して受信したデータパケットが未認識のプロトコルを使用しているかを決定する段階と、
前記未認識のプロトコルを示す前記データパケットの特性を抽出する段階であって、前記特性は、前記データパケットの振る舞いと関連付けられた1以上の特性と、前記データパケットのコンテンツと関連付けられた1以上の特性とを含み、前記データパケットの前記コンテンツと関連付けられた前記1以上の特性は、前記データパケットの前記コンテンツのエントロピーを含む、前記抽出する段階と、
前記ネットワーク接続を介して受信した前記データパケットから抽出された前記振る舞いと関連付けられた1以上の特性と前記コンテンツのエントロピーとに基づいて、フィンガープリントを生成する段階と、
前記フィンガープリントに基づいて評価値をリクエストする段階と、
受信した前記評価値が、前記フィンガープリントが悪質なアクティビティと関連付けられていると示した場合には、前記ネットワーク接続に対してポリシーアクションを実行する段階と、を備える方法。
【請求項2】
前記フィンガープリントを監査ログに格納する段階を更に備える請求項1に記載の方法。
【請求項3】
前記フィンガープリントに基づいて、プロトコルについての情報を表示する段階を更に備える請求項1または2に記載の方法。
【請求項4】
前記評価値は更に、前記ネットワーク接続に関連付けられたネットワークアドレスに基づく請求項1から3の何れか一項に記載の方法。
【請求項5】
前記評価値は、前記フィンガープリントと関連付けられたプロトコル評価、および、前記ネットワーク接続に関連付けられた接続評価に基づく請求項1から4の何れか一項に記載の方法。
【請求項6】
前記ポリシーアクションは、前記ネットワーク接続をブロックすることを含む請求項1から5の何れか一項に記載の方法。
【請求項7】
前記ポリシーアクションは、アドミニストレータに警告することを含む請求項1から6の何れか一項に記載の方法。
【請求項8】
前記フィンガープリントが後に悪質なアクティビティと関連付けられた場合には、警告を受信する段階を更に備える請求項1から7の何れか一項に記載の方法。
【請求項9】
前記フィンガープリントに関連付けられたグローバルデータをリクエストする段階と、
前記フィンガープリントに基づく前記グローバルデータを表示する段階と、を更に備える請求項1から8の何れか一項に記載の方法。
【請求項10】
1以上のプロセッサおよびメモリを備えるシステムであって、
ネットワーク接続を介して受信したデータパケットが未認識のプロトコルを使用しているかを決定する手段と、
前記未認識のプロトコルを示す前記データパケットの特性を抽出する手段であって、前記特性は、前記データパケットの振る舞いと関連付けられた1以上の特性と、前記データパケットのコンテンツと関連付けられた1以上の特性とを含み、前記データパケットの前記コンテンツと関連付けられた前記1以上の特性は、前記データパケットの前記コンテンツのエントロピーを含む、前記抽出する手段と、
前記ネットワーク接続を介して受信した前記データパケットから抽出された前記振る舞いと関連付けられた1以上の特性と前記コンテンツのエントロピーとに基づいて、フィンガープリントを生成する手段と、
前記フィンガープリントに基づいて評価値をリクエストする手段と、
受信した前記評価値が、前記フィンガープリントが悪質なアクティビティと関連付けられていると示した場合には、前記ネットワーク接続に対してポリシーアクションを実行する手段と、を更に備えるシステム。
【請求項11】
前記フィンガープリントを監査ログに格納する手段を更に備える請求項10に記載のシステム。
【請求項12】
前記フィンガープリントに基づいて、プロトコルについての情報を表示する手段を更に備える請求項10または11に記載のシステム。
【請求項13】
前記評価値は更に、前記ネットワーク接続に関連付けられたネットワークアドレスに基づく請求項10から12の何れか一項に記載のシステム。
【請求項14】
前記評価値は、前記フィンガープリントと関連付けられたプロトコル評価、および、前記ネットワーク接続に関連付けられた接続評価に基づく請求項10から13の何れか一項に記載のシステム。
【請求項15】
前記ポリシーアクションは、前記ネットワーク接続をブロックすることを含む請求項10から14の何れか一項に記載のシステム。
【請求項16】
前記ポリシーアクションは、アドミニストレータに警告することを含む請求項10から15の何れか一項に記載のシステム。
【請求項17】
前記フィンガープリントが後に悪質なアクティビティと関連付けられた場合には、警告を受信する手段を更に備える請求項10から16の何れか一項に記載のシステム。
【請求項18】
フィンガープリントエンジンと、
前記フィンガープリントエンジンと関連する命令を実行可能な1以上のプロセッサとを備え、
前記1以上のプロセッサは、
ネットワーク接続を介して受信したデータパケットが未認識のプロトコルを使用しているかを決定する段階と、
前記未認識のプロトコルを示す前記データパケットの特性を抽出する段階であって、前記特性は、前記データパケットの振る舞いと関連付けられた1以上の特性と、前記データパケットのコンテンツと関連付けられた1以上の特性とを含み、前記データパケットの前記コンテンツと関連付けられた前記1以上の特性は、前記データパケットの前記コンテンツのエントロピーを含む、前記抽出する段階と、
前記ネットワーク接続を介して受信した前記データパケットから抽出された前記振る舞いと関連付けられた1以上の特性と前記コンテンツのエントロピーとに基づいて、フィンガープリントを生成する段階と、
前記フィンガープリントに基づいて評価値をリクエストする段階と、
受信した前記評価値が、前記フィンガープリントが悪質なアクティビティと関連付けられていると示した場合には、前記ネットワーク接続に対してポリシーアクションを実行する段階と、を含むオペレーションを実行する、装置。
【請求項19】
前記オペレーションは更に、前記フィンガープリントを監査ログに格納する段階を有する請求項18に記載の装置。
【請求項20】
前記オペレーションは更に、前記フィンガープリントに基づいて、プロトコルについての情報を表示する段階を有する請求項18または19に記載の装置。
【請求項21】
前記評価値は更に、前記ネットワーク接続に関連付けられたネットワークアドレスに基づく請求項18から20の何れか一項に記載の装置。
【請求項22】
前記評価値は、前記フィンガープリントと関連付けられたプロトコル評価、および、前記ネットワーク接続に関連付けられた接続評価に基づく請求項18から21の何れか一項に記載の装置。
【請求項23】
前記ポリシーアクションは、前記ネットワーク接続をブロックすることを含む請求項18から22の何れか一項に記載の装置。
【請求項24】
前記ポリシーアクションは、アドミニストレータに警告することを含む請求項18から23の何れか一項に記載の装置。
【請求項25】
前記1以上のプロセッサは、前記フィンガープリントが後に悪質なアクティビティと関連付けられた場合には、警告を受信する段階を更に有する前記オペレーションを実行する請求項18から24の何れか一項に記載の装置。
【請求項26】
コンピュータに、請求項1から9のいずれか1項に記載の方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、概して、ネットワークセキュリティの分野に関し、より詳細には、プロトコルフィンガープリント取得および評価(reputation:レピュティション)相関のためのシステムおよび方法に関する。
【背景技術】
【0002】
現代社会では、ネットワークセキュリティの分野が重要になってきている。インターネットは、世界中の様々なコンピュータネットワークの相互接続を可能にした。しかしながら、安定したコンピュータおよびシステムを効率的に維持および保護するための能力を提供することが、部品製造者、システム設計者およびネットワーク運営者にとって障害となっている。この障害は、悪意を持ったオペレータが様々な方策を常に考え出すことによって複雑になっている。ホストコンピュータが、ある種の悪質なソフトウェア(例えば、ボット(bot)に感染すると、悪意を持ったオペレータは、リモートコンピュータから悪質なソフトウェアを制御するコマンドを発行する。ソフトウェアに様々な悪事を実行させることができ、例えば、ホストコンピュータからスパムメールまたは悪質なメールを送信させたり、ホストコンピュータに関連付けられた企業および個人から機密情報を盗ませたり、別のホストコンピュータに伝播するおよび/またはサービス妨害攻撃を分配するのを助ける等を実行させる。また、悪意を持ったオペレータは、その他の悪意を持ったオペレータにアクセス権を売ったり供与したりできるため、ホストコンピュータの悪用が広がってしまう。このように、コンピュータを悪用する悪意を持ったオペレータが考える戦術に対処する革新的なツールを開発するという課題が存在する。
【0003】
本開示並びにその特徴および利点の完全な理解を提供するべく、以下の詳細な説明では添付の図面を参照し、図面では、同様な構成要素には同様な参照番号が付与されている。
【図面の簡単な説明】
【0004】
図1】本明細書に係る、ネットワーク保護のためにプロトコルがフィンガープリント取得されおよび相関付けされるネットワーク環境の実施形態の一例が示されたブロック図である。
【0005】
図2】本明細書に係る、ネットワーク環境の一実施形態例と関連付けられてもよい更なる詳細を示したブロック図である。
【0006】
図3】本明細書に係る、ネットワーク環境の一実施形態と関連してもよいオペレーションの例を示した単純化された相互作用図である。
【発明を実施するための形態】
【0007】
一実施形態例では、方法は、ネットワーク接続を介して受信したデータパケットから抽出された特性に基づいてフィンガープリントを生成する段階と、当該フィンガープリントに基づいて評価値(reputation value)をリクエストする段階とを備える。受信した評価値によってフィンガープリントが悪質なアクティビティと関連付けられていると示された場合には、そのネットワーク接続に対してポリシーアクションを実行してもよい。方法は更に、プロトコルフィンガープリントに基づいて、より詳細には、認識されていないプロトコルのフィンガープリントに基づいて、そのプロトコルに関する情報を表示する段階を備える。別の実施形態では、評価値は、ネットワーク接続と関連付けられたネットワークアドレスに基づいてもよい。
【0008】
図1は、ネットワーク保護のためにプロトコルがフィンガープリント取得および相関付けされるネットワーク環境10の実施形態の一例が示されたブロック図である。ネットワーク環境10は、インターネット15、エンドホスト20aおよび20b、ファイアウォール22、リモートホスト25aおよび25b、並びに、スレットインテリジェンスサーバ(threat intelligence server)30を備えてもよい。一般的に、エンドホスト20aおよび20bは、ネットワーク接続における任意の種類の終端点であってもよく、これに限定されないが、例えば、デスクトップコンピュータ、サーバ、ラップトップ、携帯電話、または、例えば、任意の2つのポート35aから35fの間でリモートホストとネットワーク接続を受信可能または確立可能なその他の種類のデバイスを含む。エンドホスト20aは、アプリケーション40aを実行してもよく、エンドホスト20bは、例えば、アプリケーション40bを実行してもよい。リモートホスト25aおよび25bは、例えば、コマンドおよび制御(C&C)サーバ45のようなコンピュータまたはデバイスの制御下にあってもよい悪質なソフトウェア(マルウェア(malware))によって操作される可能性のある任意のコンピュータまたはその他デバイスを表している。エンドホスト20aおよび20b、ファイアウォール22、リモートホスト25aおよび25b、スレットインテリジェンスサーバ30、および、C&Cサーバ45のそれぞれは、インターネットプロトコル(IP)アドレスと関連付けられていてもよい。
【0009】
図1に示す構成要素は、ネットワーク通信で利用可能な経路を提供する好適な接続(無線または有線)または簡単なインターフェースを介して、互いに接続されてもよい。更に、これら構成要素の1以上は、特定の構成要件に基づいて、アーキテクチャ上で組み合わせられてもよいし、取り除かれてもよい。ネットワーク通信は、典型的には、構成要素間でメッセージを交換するためのプロセスおよび形式を指定する特定のプロトコルに従う。ネットワーク環境10は、ネットワークにおいて、パケットを送受信するための、伝送制御プロトコル/インターネットプロトコル(TCP/IP)を使用可能な構成を含んでもよい。ネットワーク環境10は、特定の要求に基づき、適切な場合に、ユーザデータグラムプロトコル/IP(UDP/IP)またはその他の好適なプロトコルと連動して動作してもよい。
【0010】
悪質なソフトウェアに対するネットワーク保護のためのシステムの技術を例示するには、所定のネットワーク内で発生するアクティビティについての理解が重要である。以下に記載する基本的な情報は、本開示を適切に説明するための基礎として見なされる。このような情報は、説明のためだけに提供されており、本開示の範囲および適用範囲を限定するものとして解釈されるべきではない。
【0011】
組織および個人で使用される典型的なネットワーク環境は、他のネットワークと電子的に情報をやり取りする機能を含み、例えば、インターネットに接続されたサーバにホストされたウェブページにアクセスする、電子メール(すなわち、eメール)メッセージを送受信する、エンドユーザまたはサーバとファイルを交換するのに、インターネットを使用している。悪意を持ったユーザは、インターネットを利用してマルウェアを拡散し、機密情報へのアクセスを取得するような新しい戦略を常に開発している。
【0012】
コンピュータセキュリティにおいて脅威となっている戦略には、ボットネット(botnet)が含まれ、深刻なインターネットセキュリティの問題となっている。多くの場合、周知のおよび新規の脆弱性の組み合わせを含む巧妙な攻撃スキームが採用されている。ボットネットは一般的に、クライアントサーバアーキテクチャを使用し、ある種の悪質なソフトウェア(すなわち、ボット)がホストコンピュータに配置されて、悪質なユーザ(例えば、ボットネットのオペレータ)によって制御される場合がある、コマンドおよび制御(C&C)サーバと通信を行う。通常、ボットネットは、インターネットリレーチャット(IRC)およびピアツーピア(P2P)通信を含む様々なチャネルを介して、C&Cプロトコルを使用してオペレータによって制御される多数のボットから構成される。ボットは、C&Cサーバからコマンドを受け取って、特定の悪質なアクティビティを実行し、このようなコマンドを実行する。ボットはまた、任意の結果または盗んだ情報を、C&Cサーバに送信する場合がある。
【0013】
ボットネット攻撃は、一般的に、同じライフサイクルに従う。最初に、デスクトップコンピュータが、多くの場合、気軽に行ったダウンロードや、トロイの木馬またはバッチされていな脆弱性を介して、マルウェアに侵される。そしてマルウェアは、コンピュータを乗っ取り、ボットに変換して、ボットマスターがコンピュータを制御できるようにする。多くの場合、マルウェアは、コンピュータオーナーの同意を得ずに、コンピュータへのアクセスおよび/または制御を行うように設計されたソフトウェアを含み、例えば、コンピュータウイルス、スパイウェア、アドウェア(adware)等の任意の敵意を有するやっかいなソフトウェアとして扱われる。コンピュータが一旦マルウェアに侵されると、ボットにされてしまい、ボットマスターに制御されてしまう。ボットマスターは、このようなコンピュータを利用して、スパミング(spamming)のような悪質なアクティビティを行う。悪質なアクティビティを実行するコマンドを受信するのに加えて、ボットは、組織のネットワーク内に、または、その他の組織若しくは個人へのネットワークにわたって、拡散可能な1以上の伝播ベクトルを含む。一般的な伝播ベクトルは、ローカルネットワーク内のホストにおける周知の脆弱性を利用すること、および、添付された悪質なプログラムを有する悪質なeメールを送信すること、または、eメール内に悪質なリンクを提供することを含む。
【0014】
既存のファイアウォールおよびネットワーク侵入を防ぐ技術は、常に、ボットネットを認識し阻止できるわけではない。現在のファイアウォールは、周知のアプリケーションと関連付けられたトラフィックを検出する機能およびトラフィックに作用する機能を有する。しかしながら、アドバンストパーシスタントスレット(advanced persistent threat:APT)のような、ネットワーク上の多数の脅威は、例えば、カスタムプロトコルを含む未知の通信メカニズムを使用している。更に、既存のファイアウォールは、アプリケーション署名の標準的なセットでは、所定のネットワークの多量のトラフィックを分類することはできないと思われる。このように、既存のファイアウォールおよびその他のネットワーク侵入を防ぐ技術では、認識不可能なトラフィックに対して、有意なポリシー決定を実装することができない。
【0015】
一部の評価システム(reputation system)は、特定のボットネットに対して有効な防御を提供する。一般的に、評価システムは、アクティビティを監視し、過去の振る舞いに基づいて、エンティティに評価値または評価点数を割り当てる。評価値は、良質から悪質までのスペクトルにおいて、様々なレベルの信頼性を示す。例えば、あるネットワークアドレスについての接続評価値(例えば、最小リスク、未証明、ハイリスク等)は、そのアドレスとのネットワーク接続またはそのアドレスから発信されたeメールに基づいて、計算される。接続評価システムは、悪質なアクティビティと関連付けられていると知られているまたは可能性があるIPアドレスのような、受け入れられない接続評価を有するIPアドレスからのeメールまたはこのようなIPアドレスとの接続を拒否するのに使用されてもよい。その他の評価システムによって、悪質なアクティビティと関連付けられていると知られているまたは可能性があるハッシュを有するアプリケーションのアクティビティをブロックすることができる。しかしながら、接続評価の参照は、ネットワークトラフィックによって起動され、その他の評価参照は、ネットワークトラフィックを考慮していない。
【0016】
一実施形態によれば、ネットワーク環境10は、このような欠点(およびその他の欠点)を、プロトコルのフィンガープリント取得および評価データの関連付けによって解決できる。例えば、ネットワーク環境10は、プロトコルを示す特定の特性に基づいて、未認識のプロトコルのフィンガープリントを取得するメカニズムを提供し、未認識のプロトコルを使用するトラフィックに対するポリシー決定に、グローバルスレットインテリジェンス(global threat intelligence:GTI)データを利用することができる。GTIデータは、例えば、未知のプロトコルトラフィックについての、プロトコル評価、外部アドレス接触の評価、または、地理的分析結果を含む。
【0017】
より詳細には、プロトコルフィンガープリントは、ネットワーク上の未認識のプロトコルに対して生成されてもよい。未認識のプロトコルとは、例えば、フィンガープリントを有さないまたは既存の署名を有するアプリケーションと関連付けられていないプロトコルを広く含む。プロトコルフィンガープリントは、そのプロトコルを使用するトラフィックから抽出される特定から導きだすことができ、接続データと共にスレットインテリジェンスサーバに送信することができる。スレットインテリジェンスサーバは、接続データおよびプロトコルフィンガープリントに基づく評価値を返してもよい。そして、プロコル評価によって、以前にフィンガープリントを取得したトラフィックフロー、アプリケーション署名が利用可能なフローを含む未認識トラフィックフローについての情報を使用可能にしてもよい。
【0018】
図2は、本明細書に係る、ネットワーク環境10の一実施形態例と関連付けられてもよい更なる詳細を示したブロック図である。図2では、インターネット15、エンドホスト20aおよび20b、ファイアウォール22、リモートホスト25aおよび25b、スレットインテリジェンスサーバ(threat intelligence server)30が含まれる。これらのそれぞれが、プロセッサ50aから50e、メモリ要素55aから55e、および、様々なソフトウェア要素を含んでもよい。より詳細には、エンドホスト20aおよび20bは、対応するアプリケーションモジュール40aおよび40bを含む。ファイアウォール22は、プロトコル、フィンガープリントエンジン42、アプリケーション署名44およびユーザインターフェース46をホストしてもよい。相関エンジン60は、スレットインテリジェンスサーバ30によってホストされ、ボット65は、リモートホスト25aによってホストされる。
【0019】
一実装形態では、エンドホスト20aおよび20b、リモートホスト25aおよび25b、および/またはスレットインテリジェンスサーバ30はネットワーク要素であり、ネットワーク要素とは、ネットワーク電気製品、サーバ、ファイアウォール、ルータ、スイッチ、ゲートウェイ、ブリッジ、負荷分散装置、プロセッサ、モジュール、または、その他の好適なデバイス、部品、素子、または、ネットワーク環境で情報を交換可能なオブジェクトを含む。ファイアウォール22は、適切であれば、別のネットワーク要素に組み込まれてもよい、または、組み合わせられてもよい。ネットワーク要素は、任意の好適な、ハードウェア、ソフトウェア、部品、モジュール、インターフェース、または、これらのオペレーションを簡易にするオブジェクトが含まれてもよい。これには、データまたは情報の有効な交換を可能とする適切なアルゴリズムおよび通信プロトコルが含まれてもよい。しかしながら、エンドホスト20aおよび20bは通常、ゲートウェイまたはファイアウォールとは異なり、ネットワーク接続の終点として機能する傾向があることから、その他のネットワーク要素とは区別される。エンドホストとは、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ(例えば、iPad(登録商標))、電子書籍リーダ、携帯電話、スマートフォン(例えば、iPhone(登録商標)、アンドロイドフォン等)およびその他同様なデバイスのような、有線および無線ネットワークエンドポイントを含む。リモートホスト25aも同様に、ネットワーク接続の終点として機能してもよく、上記のようなデバイスを含む。
【0020】
ネットワーク環境10と関連付けられる内部構造については、エンドホスト20aおよび20b、ファイアウォール22、リモートホスト25aおよび25b、および/または、スレットインテリジェンスサーバ30のそれぞれは、以下に説明するオペレーションで使用される情報を格納するメモリ要素(図2参照)を含んでもよい。また、これらデバイスはそれぞれ、以下に説明するアクティビティを実行するソフトウェアまたはアルゴリズムを実行可能なプロセッサを含んでもよい。これらデバイスはまた、任意の好適なメモリ要素(ランダムアクセスメモリ(RAM)、ROM、EPROM、EEPROM、ASIC等)、ソフトウェア、ハードウェア、または、その他の好適な構成要素、デバイス、素子若しくはオブジェクトに情報を保持してもよい。本明細書に記載するこれらメモリは、"メモリ要素"という広い言葉に含まれると解釈されるべきである。エンドホスト20aおよび20b、ファイアウォール22、リモートホスト25aおよび25b、および/または、スレットインテリジェンスサーバ30によって追跡されるまたは送信される情報は、任意のデータベース、レジスタ、制御リストまたは記憶構造に提供され、これらの情報は、好適な時間フレームにおいて参照可能である。このような記憶構造オプションについても、本明細書で使用される"メモリ要素"という言葉に含まれる。同様に、本明細書に記載される使用可能な処理要素、処理モジュールおよび処理機械は、"プロセッサ"という広い言葉に含まれると解釈されるべきである。ネットワーク要素のそれぞれは、ネットワーク環境におけるデータまたは情報を、受信、送信および/または通信するのに好適なインターフェースを含んでもよい。
【0021】
一実装形態では、エンドホスト20aおよび20b、ファイアウォール22、リモートホスト25aおよび25b、および/または、スレットインテリジェンスサーバ30は、本明細書に説明されるオペレーションを達成するまたは発展させるソフトウェア(例えば、フィンガープリントエンジン42の一部として)を含む。別の実施形態では、このようなオペレーションは、これら要素の外側で実行されてもよい、または、別のネットワーク要素に含まれて、意図した機能が達成されてもよい。これに替えて、本明細書に説明するオペレーションを達成するために協働可能なソフトウェア(またはレシプロケイトソフトウェア)を含んでもよい。更なる別の実施形態では、これらデバイスの1つまたは全てが、好適なアルゴリズム、ハードウェア、ソフトウェア、構成要素、モジュール、インターフェース、または、これらのオペレーションを簡易にするオブジェクトを含んでもよい。
【0022】
特定の実装形態の例では、本明細書に説明する機能が、1以上の一時的でない有形媒体(例えば、特定用途向け集積回路(ASIC)に提供される組み込みロジック、デジタル信号プロセッサ(DSP)命令、プロセッサまたは同様な機械によって実行されるソフトウェア(場合によっては、オブジェクトコードおよびソースコードを含む)等)において符号化されたロジックによって実装されてもよい。このような例として、メモリ要素(図2に示す)は、本明細書に説明するようなオペレーションで使用されるデータを格納してもよい。本明細書に説明されるアクティビティを実行するべく実行されるソフトウェア、ロジック、コードまたはプロセッサ命令を格納可能なメモリ要素が含まれる。プロセッサは、本明細書に説明されるオペレーションを達成するべく、データと関連付けられた任意の種類の命令を実行してもよい。一例では、(図2に示すように)プロセッサは、要素またはアーティクル(例えば、データ)を、一のステートまたは一の物から別のステートまたは別の物へと変換する。別の例では、本明細書に説明されるアクティビティは、固定ロジックまたはプログム可能ロジック(例えば、プロセッサによって実行されるソフトウェア/コンピュータ命令)を使用して実行されてもよく、本明細書で特定される要素は、ある種のプログラマブルプロセッサ、プログラマブルデジタルロジック(例えば、フィールドプログラマブルゲートアレイ(FPGA)、消去可能プログラム可能リードオンリーメモリ(EPROM)、電子的消去可能プログラム可能ROM)(EEPROM)、または、デジタルロジック、ソフトウェア、コード、電子的命令並びにこれらの好適な組み合わせを含むASIC)である。
【0023】
図3は、ネットワーク環境10の一実施形態に関連するオペレーションの例を示した単純化した相互作用ダイアグラム300である。一般的に、ファイアウォール22は、リモートホスト25aのようなリモートノードからインバウンドネットワークトラフィック302aを、エンドホスト20aおよび20bのようなローカルノードからアウトバウンドネットワークトラフィック302bを、または、エンドホスト20aおよび20bのようなインターナルネットトラフィックを受信してもよい。ネットワークトラフィック302aおよび302bを、304において既存のプロトコルおよび/またはアプリケーション署名と比較して、例えば、フィンガープリントエンジン42によって未知のまたは未認識のプロトコルのフィンガープリントを306において生成してもよい。ある実施形態では、306において既知のプロトコルについてもフィンガープリントを取得してもよい。
【0024】
フィンガープリントは、例えば、インバウンドネットワークトラフィック302aおよびアウトバウンドネットワークトラフィック302bのようなネットワーク上で観察されるトラフィックプロトコルの様々な振る舞いの特性を抽出することによって生成されてもよい。例えば、フィンガープリントエンジン42は、ネットワーク接続を介して受信する複数のデータパケットを観察し、(例えば、パケットの数および/またはサイズによる)トラフィックのクエリ/応答の比を、1つのフィンガープリント特性として記録してもよい。フィンガープリントエンジン42はまた、パケットサイズ分布等の特性に基づいて、プロトコルをストリームベースまたはメッセージベースとして特徴づけて、その情報をフィンガープリント特性として記録してもよい。例えば、ストリームベースのプロトコルにおける大きなダウンロードは、最大パケットサイズを有する大量のパケットに分割される可能性が高い。反対に、メッセージベースのストリームは、可変サイズの小さなパケットで構成されている可能性が高い。同様に、トラフィックは、ASCIIまたはバイナリとして特徴づけられるので、この情報をフィンガープリントに組み込んでもよい。フィンガープリント特性のその他の例としては、トランスポートプロトコル、最初のトークン(例えば、ASCIIプロトコルにおける"GET")、最初のXバイト、最初のラインの最後のXバイト、最初のラインの最後のトークン(例えば、ハイパートランスファープロトコルの"HTTP/1.1/r/n")が挙げられる。パケットコンテンツのエントロピー(すなわち、ランダムネスの程度)は、観察可能でありフィンガープリントを取得可能なプロトコル特性の別の一例である。例えば、大部分が英語のテキストで構成されているパケットの場合、冗長性が含まれている場合が多く、反対に、圧縮されたまたは暗号化されたファイルには、冗長性がわずかでありエントロピーが高い。その他に識別可能な特性としては、パケットの最初の2バイト(例えば、長さポインタの場合)、キー・コロン・値・改行のフォーマット、Abstract Syntax Notation One(ASN.1)エンコードデータ、交換の順番(すなわち、クライアントまたはサーバのどちらが最初のメッセージを送信するか)、パケットの最初のバイトとしての数値(例えば、ハイパーテキストトランスファープロトコルの場合"200OK")、特別な意味を有する数字で始まるメッセージ、ネゴシエーション前ストリームパターン(例えば、データをストリームする前に交換される小さなパケット)、トランザクションID(例えば、クライアントからの最初の2バイトが、サーバからの最初の2バイトと同じ)、および、type−length−value(TLV)またはlength−value(LV)フォーマットが挙げられる。
【0025】
308において、評価クエリが、例えば、インターネット15のようなネットワークを介して、スレットインテリジェンスサーバ30に送信されてもよい。評価クエリ308は、例えば、接続データおよびプロトコルフィンガープリントが含まれてもよい。接続データは、ネットワーク接続を特定する様々なパラメータを含み、例えば、ネットワークアドレスを含んでもよい。ネットワークアドレスは、通常、接続のエンドホストおよびリモートエンドの両方を特定するデータを含み、例えば、ローカル(エンドホスト)IPアドレスおよびポート、並びに、リモートホストIPアドレスおよびポートを含む。312において、スレットインテリジェンスサーバ30は、プロトコルフィンガープリントと評価データ310とを相関づけてもよく、314において応答を戻す。
【0026】
314における応答は、例えば、プロトコルフィンガープリントの評価(すなわち、プロトコル評価)に基づいて、および/または、接続に関連するネットワークアドレスの評価(すなわち、接続評価)に基づいて、良質から悪質までのスペクトルにおいて様々なレベルの信頼性を示す評価値を含み、更に、接続を許可するべきかを示してもよい。クエリ応答が、接続が良質であると思われる場合、接続を許可してもよく、応答が接続は悪質であると思われる場合には、ポリシーに基づいて適切なポリシーアクションを実行してもよい。例えば、適切なアクションとしては、接続をブロックする、ユーザまたはアドミニストレータに警告する、または、将来の犯罪化学的分析のためにフィンガープリントおよびその他のネットワーク情報をログに記録する等が含まれる。
【0027】
これに替えてまたは加えて、316において、ユーザインターフェースは、プロトコルフィンガープリントに基づいて全ての未知のプロトコルについての情報、および、ある実施形態では、アプリケーション署名に基づいて既知の全てのアプリケーション/プロトコルについての統計を表示してもよい。例えば、フィンガープリントに関連付けられた10個の独立したプロトコルが存在する場合、ユーザインターフェースは、未知のプロトコルに関する情報を表示してもよい。アドミニストレータまたはその他ユーザは、318においてユーザインターフェースを介して、スレットインテリジェンスサーバ30にクエリを送信して、プロトコルフィンガープリントに関する更なるデータを受け取ってもよく、それにより、GTIデータを有する情報を充実させることができる。例えば、クエリによって、リモートホストアドレスの地理的分布(すなわち、未知のプロトコルについての外部IPが位置する国)のような、プロトコルフィンガープリントについてのグローバルデータ、未知のプロトコル(例えば、悪質なまたは未知の)を使用するリモートホストの評価、および、未知のプロトコルを報告するサイトの数(プロトコルがローカル現象であるのか、または、対象となる脅威であるのかを示す)といった、プロトコルフィンガープリントのグローバルデータを取得してもよい。より具体的な例では、アメリカの銀行では、未知のプロトコルのフィンガープリントを取得し、スレットインテリジェンスサーバ30が、フィンガープリントがロシアのネットワークアドレスで最も頻度高く使用されていると判断すると、アドミニストレータは、この情報に基づいて未知のプロトコルをブロックすることができる。更に、未知のプロトコルに関する知識を収集して、記述的情報およびメタデータを、プロトコルと関連付けることができる。例えば、未知のプロトコルがファイアウォールによって発見され、スレットインテリジェンスサーバに投稿された場合、プロトコルが後にAPTと関連付けられる場合には、スレットインテリジェンスサーバは、ファイアウォールまたはアドミニストレータに警告を行ってもよい。
【0028】
上記で記載された例は、その他の可能性のある数多くの例および相互作用と共に、2つ、3つまたは4つのネットワーク構成要素の観点で説明されている。しかしながら、これは説明および例示を簡単に行うことを目的としての記載である。これは、オペレーションの所定のセットの1以上の機能を説明するのに、限られた数のネットワーク要素のみを参照する方が容易であることが理由である。ネットワーク環境10は、容易に拡大可能であり、多数の構成要素、より複雑な/高度な配置および構成を含むことができることは明らかである。したがって、本明細書に記載された例は、ネットワーク環境10の範囲または広い教示を限定するものではなく、無数のその他のアーキテクチャに適用可能である。また、フィンガープリントエンジンのような特定のモジュールがネットワーク要素に提供されるといったように、特定のシナリオを参照して説明が増されたが、モジュールは、外部に設けられても、任意の好適な態様で統合および/または組み合わせられていてもよい。ある例では、このような複数のモジュールが、1つの所有単位に提供されてもよい。
【0029】
また、添付の図面に例示された段階は、ネットワーク環境10内でまたはネットワーク環境によって実行される可能性のあるシナリオおよびパターンの一部のみを示したものである。これら段階は、適切であれば削除または省略可能であり、本明細書に記載される教示の範囲内において、大幅に変更または修正されてもよい。また、複数のオペレーションが、同時に、または、1以上の更なるオペレーションと平行して実行されると記載されたが、これらオペレーションのタイミングを、大幅に変更可能である。上記のオペレーションフローは、例示および説明のために提供されたものである。ネットワーク環境10には、任意の好適な配置、イベントの順番および構成には大幅な変更の余地が与えられ、本明細書に記載される教示の範囲内において、タイミングメカニズムが提供される。
【0030】
数多くのその他の変更、代替、変形例、改良例および修正が当業者であれば理解でき、本開示は、そのような変更、代替、変形例、改良例および修正についても添付の特許請求の範囲に含むことを意図している。米国特許商法局(USPTO)を支援するべく、および、本願について発行される特許の読者が添付のクレームを解釈するのを支援するべく、出願人は次の事項について留意を望む。(a)特定の請求項において"means for"または"step for"という記載が使用されていない限り、添付の特許請求の範囲について、35USC第112章の第6パラグラフの行使を意図していない。(b)添付の特許請求の範囲に反映されていない限り、本明細書の如何なる記載も、本開示を限定することを意図していない。
図1
図2
図3