(57)【要約】この発明の実施形態は、異常な網の振舞いを識別するの使用するための網の振舞いの形式を識別する方法と装置とに関する。とくに、実施形態は電子メールビールスを識別することに関係している。この方法は、網上で移動した網トラヒックを表すデータを収集する段階；該収集したデータから複数の網の振舞いの形式を認識するための分類手段を学習させる段階；及び、網上を移動している未知のデータについて、定義された網の振舞い形式の一つに、この未知のデータを分類とを含む。
2004537916.tif 000002
【特許請求の範囲】
【請求項１】
通信網上で作動するシステムに係る振舞いパターンを識別する方法であって、該システムは複数の、サーバ計算機とクライアント計算機とを含み、少くとも若干のサーバ計算機は該通信網上で１またはそれ以上のクライアント計算機との間でデータを配信し、また受信するようになっていて、該方法は、
（ａ）該システム内部で送られたデータに係るデータを受信する段階であって、受信した各データアイテムは、該システム内部で該データアイテムが送られた配信先か配送元かあるいはその両方の計算機を識別する段階と、
（ｂ）該受信したデータを該システム内部で送られたデータの分布を示している提示に、識別された計算機の機能として、組織する段階と、
（ｃ）該提示を用いて分類手段を学習訓練して複数の振舞い形式を認識する段階とを備えている。
【請求項２】
該提示を該分類手段に入力するのに適したフォーマットに変換する段階を含んでいる請求項１記載の方法。
【請求項３】
請求項１または２記載の方法であって、段階（ｂ）は該システムにおけるサーバ及びクライアント計算機のトポロジカルな提示を作ることを含んでおり、また該方法は、各受信したデータアイテムについて、該識別された計算機と関係している活動のレベルを表わしているカウンタをインクレメントする段階と、
活動のレベルを示している識別子を該識別された計算機に対応している該トポロジカルな提示のどんな部分に対しても加え、それによって該システム内部で送られたデータの分布を表わしている提示を創る段階とを備えている方法。
【請求項４】
請求項３記載の方法において、前記トポロジカルな提示は、該網の領域をそれぞれが表わしている複数の地域と、
該網の対応している領域内部のサーバ計算機をそれぞれが表わしている複数の部分地域と、
対応しているサーバ計算機に対してクライアントとして動作しているクライアント計算機をそれぞれが表わしている複数の副次の部分地域とを含んでいて、さらに、
該識別された計算機に対応しているトポロジカルな提示のどの部分に対しても識別子を加える前記段階はどの部分地域または副次の部分地域でも対応がとれているものに対して識別子を加えることを含んでいる。
【請求項５】
該活動のレベルはトポロジカルな提示で正規化されている請求項３または４記載の方法。
【請求項６】
請求項５記載の方法であって、前記変換する段階は、該提示を活動の頻度提示に変換することと、該頻度表示をベクトルに変換して、このベクトルが分類手段への入力に適したものとすることとを含んでいる方法。
【請求項７】
該提示を頻度提示に変換する該段階は前記提示に対してフーリエ変換を適用することを含んでいる請求項６記載の方法。
【請求項８】
該頻度提示をベクトルに変換する該段階は、対応しているベクトル値を抽出するために該頻度提示をサンプリングすることを含んでいる請求項６または７記載の方法。
【請求項９】
請求項１または２記載の方法において、該受信したデータアイテムはさらに該システム内部で送られたデータの属性を識別し、
また段階（ｂ）は、該システム内のサーバ機械間のリンクにそれぞれが対応している複数のリストを創る段階を備え、また、
各受信したデータアイテムについて、該対応している送られたデータが通ったリンクを識別する段階と、
該識別されたリンクに対応しているリストを識別する段階と、
該データアイテムの属性を識別する段階と、
各識別された属性について、該識別されたリスト内で対応しているカウンタをインクレメントする段階とを含んでいる。
【請求項１０】
請求項９記載の方法において、請求項２の記載に従うことを条件とし、該変換する段階が該リストの少くとも一部を備えているベクトルを創ることを含み、該ベクトルは分類手段への入力に適したものである。
【請求項１１】
請求項２ないし請求項１０のいずれか１項記載の方法において、データが複数の時間期間に関して受領され、該組織しまた変換する段階は、該複数の時間期間について実行され、それによって該分類手段に対して入力するための複数の変換された提示を生成する。
【請求項１２】
請求項１１に記載の方法において、該方法は複数の異なるサイズの時間期間について実行され、それによって各サイズの時間期間について複数の振舞いの形式が存在するようになる。
【請求項１３】
各サイズの時間期間について、異なったそれぞれの分類手段が使用される請求項１４記載の方法。
【請求項１４】
請求項１ないし請求項１３のいずれか１項記載の方法において、受信されているデータが電子メールデータであり、また識別されることになる異常な振舞いが網を通って伝搬している電子メールビールスである方法。
【請求項１５】
請求項１４記載の方法において、前記受信段階（ａ）は、ファイヤウォール構成の一部となっているログファイルか、電子メールサーバ機械からアクセス可能なログファイルか、複数の電子メールサーバ機械からアクセス可能な複数のログファイルかのいずれかからデータを収集することを含んでいる。
【請求項１６】
該受信したデータを、送られたデータの形式の機能として受信したデータの群に構成することを含んでいる請求項１ないし請求項１５のいずれか１項記載の方法。
【請求項１７】
複数のサーバ計算機及びクライアント計算機を含むシステム内部で送られた未知のデータアイテムに係る異常な振舞いを識別する方法であって、
未知のデータアイテムに係るデータを受信する段階と、
請求項３もしくは請求項９のいずれかの記載により該受信したデータを提示に組織する段階と、
請求項６もしくは請求項１０のいずれかの記載により該提示を該分類手段への入力に適したフォーマットに変換する段階と、
該変換された提示を該学習訓練した分類手段に入力する段階と、
該未知のデータを振舞いの形式として分類するために該分類手段を作動する段階とを含む方法。
【請求項１８】
通信網内部で動作するシステムに係る異常な振舞いを識別する装置であって、該システムは複数のサーバ計算機及びクライアント計算機を備え、各サーバ計算機は該通信網上で１またはそれ以上のクライアント計算機との間で、データを送りまたデータを受けるように構成されており、また、該装置は、
該システム内部で送られたデータに係るデータを受信するように構成されてた受信手段であって、受信したデータアイテムの各々は、ある時間期間中に前記データアイテムが送られた配信先か配送元かあるいはその両方の計算機を該システム内部で識別する手段と、
該受信したデータを、送られたデータの形式の機能として、受信したデータの群とするようにし、それによって各群が振舞いの形式を表わすようにする動作可能な手段と、
各群におけるデータを組織して、該システム内部で送られたデータの分布を該時間期間中に識別された計算機の機能として示している提示にするように構成された組織用手段と、
入力として該提示を受領するように動作可能であり、かつ該群に対応している振舞いを表す出力を生成するように動作可能である分類手段とを具備する。
【請求項１９】
該提示を該分類手段に入力するのに適したフォーマットに変換するように構成された変換用手段を含んでいる請求項１８記載の装置。
【請求項２０】
請求項１９記載の装置において、該受信用手段はファイヤウォール構成の一部であるログファイルか、サーバ機械からアクセス可能なログファイルか、あるいは複数のサーバ機械からアクセス可能な複数のログファイルかのいずれか１つからデータを検索するよう動作可能な手段と動作上関係している。
【請求項２１】
該組織用手段が該システムのサーバ及びクライアント計算機の活動のレベルを示す提示を創るように構成された手段を含む請求項１９または請求項２０記載の装置。
【請求項２２】
該変換用手段が該提示を頻度提示に変換するよう動作可能な手段を含む請求項２１記載の装置。
【請求項２３】
該変換用手段は該提示に対してフーリエ変換を適用し、それによって頻度提示を生成するよう動作可能な手段を含む請求項２２記載の装置。
【請求項２４】
請求項１８記載の装置であって、少くとも若干のサーバ計算機を通るデータを解析し、かつ該解析されたデータと関係している属性を識別するように構成された手段を含み、該解析されたデータに係る受信したデータは前記サーバ計算機と識別された属性とを識別する装置。
【請求項２５】
該分類手段は、ニューラル網か、統計的分類器か、パターン認識器かのいずれか１つを備えている請求項１８ないし請求項２４のいずれか１項記載の装置。
【請求項２６】
請求項２５記載の装置において、該分類手段がニューラル網を備えるときには、前記ニューラル網は少くとも複数の入力ノードを備えている入力レイヤと、
複数の、隠れたノードを備える隠れたレイヤであって、隠れたレイヤは入力レイヤと動作上関係指定しているものと、複数の出力ノードを備える出力レイヤであって、出力レイヤは隠れたレイヤと動作上関係しているものと、各出力ノードが振舞いの形式に対応している。
【請求項２７】
該受信したデータが電子メールデータであり、また識別されるべき該異常な振舞いが該網内を伝搬している電子メールビールスである請求項１８ないし請求項２６のいずれか１項記載の装置。
【請求項２８】
少くとも若干の該出力ノードが電子メールビールス伝搬の割合に対応している請求項２７記載の装置。
【請求項２９】
請求項１８ないし請求項２８のいずれか１項記載の装置であって、さらに少くとも若干の該出力ノードと動作関係にあるように構成されて、かつ出力ノードの活動に依存して複数の警報出力の一つを生成するように動作可能な警報手段を含んでいる装置。
【請求項３０】
電子メールビールスを識別するのに使用するための電子メール活動デバイスであって、該デバイスは網の中に置かれて、該網内の他のデバイスと通信するように動作可能であり、
ファイヤウォール構成の一部であるログファイルか、電子メールサーバ機械からアクセス可能なログファイルか、あるいは複数の電子メールサーバ機械からアクセス可能な複数のログファイルのいずれか１つからある時間期間中に電子メールトラヒックを表わすデータを検索するように動作可能な検索手段と、
該検索したデータを該期間中の前記電子メールトラヒックの分布を示す提示に組織するように構成された組織手段と、
該提示を分類手段への入力として適したフォーマットに変換するように構成された変換手段と、
該変換された提示を入力として受領するように動作可能であり、かつ電子メールトラヒックの形式を表わしている出力を生成するように動作可能である分類手段とを含む電子メール活動デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、網の振舞い（behavior）の形式（type）を識別する方法と識別用の装置に係り、網を通って伝搬する電子メールビールス（virus）のような異常な（aberrant）網の振舞いを識別することに特別の応用分野を有しているものである。
【背景技術】
【０００２】
電子メール（email）は最も広く使用されているアプリケーションサービスであり、その理由は、これが高速で便利な情報転送の方法を提供することによる。情報を迅速に、表面上送り側と受け側との間の距離に依存しないで通信するためのこの能力が電子メールをこんなに魅力的なものとする主要な特徴の一つである。一般に、こういった特徴は積極的なやり方で開発されることができ、例えば、ビジネス取引（transactions）の品質と数量とを改善しかつ増大させるのにあてられる。実際に、電子メールをこんなにもポピュラーのものとしたのは正にこういった要因である。しかしながら、こういった特徴はまた消極的なやり方で展開されることにもなり、それがいわゆる“ビールス(virus)”によるものであり、混乱の原因となりまた電子メール受信者に対するデータの損失にもなっている。
【０００３】
ビールスは、プログラム用コードの一部分であり、通常は何か別のものとして偽装されていて、これが何かしら予期されていない、しかも通常は好ましくない事象の原因となっていて、しかもしばしば他の計算機ユーザに向けて自動的に拡散されるように設計されたものとなっている。ビールスについて最も普通な伝送手段は電子メールによるものであり、通常はアタッチメント（付帯物）となっている。あるビールスはその効果をそのコードが実行されると直ちに発揮する。他のビールスはそのコードが計算機によって実行されることとなる環境が到来するまでは睡眠状態にある。
【０００４】
ビールス検出に適用される既知の方法は、既知のビールスのライブラリィ（library）を、こういった既知のビールスを探すためのソフトウェア（例えばMcAfee（ＴＭ）やDr  Solomons（ＴＭ）であって、“抗ビールス（anti-viral）”ソフトウェアと一般に呼ばれているもの）と一緒に維持することを含んでいる。こういった方法は、本質的には、既知のビールスに対応しているシグネチャ（signatures）を有しているファイルを特定するためにファイルのバイトシグネチャの解析を実行する。
【０００５】
電子メールビールスを識別するための他の既知の方法は、McAfeeの製品である“アウトブレーク・マネージャ（Outbreak Manager）”で採用されているようなもので、これは入来する電子メールメッセージをある種の規準に従って解析して、もしある種のパターンが検出されるとすると、例えば同じ主題（subject）ラインとか同じアタッチメントを伴う電子メールメッセージの尋常でない数が検出されると、入来するメッセージを隔離する。このやり方は電子メールの振舞いを解析することに集中することが主張されてはいるが、これは電子メールのある種の特徴に関して電子メールを解析しているのであり、したがってある種のアプリオリの（論理に基づいた）電子メール知識に依存することは避けられない。
【０００６】
２０００年１１月にはアンチビールス・アジア・研究者協会（the Association of anti Virus Asia Researchers）の年会で、“急速なビールス変換（Rapid Virus Exchange）”という題名の論文が著名な計算機ビールス関連会社の技術取締役によって発表されている。この会社はSophosと言い、発表の詳細はＡＶＡＲ事務局から入手できるものであり、その所在地は、郵便番号４２２−８０５２、日本国静岡県静岡市緑ヶ丘町１−１ ＪＣＳＲ（日本コンピュータセキュリティ研究センタ）である。この論文の趣旨は、現状のアンチビールスの戦いの有効性は、アンチビールスの製造元がビールスのサンプルを得ることの速度と、治療が見つかる速度と、治療がアンチビールスソフトウェアのユーザに配布可能となる速度とに依存しているということである。したがって、この発明の優先日以前には、アンチビールスの考え方は計算機ビールスのコンテンツにフォーカスがあてられていた。
【０００７】
国際特許出願ＰＣＴ／ＤＥ９９／０３９２１，公開番号ＷＯ００３６７８８は網管理動作における不規則性を識別する方法を記述する。この発明で言われている問題は、網管理動作が網オペレータと最終の顧客との両方によって実行される環境から生じている。網オペレータは、網の最終顧客のすべてについての網管理の振舞いの苛酷な局面を担わなければならないし、また、異なる最終顧客が経験とスキルとについての異なるレベルを有することが極めてありそうであることとすると、網管理の異なる形式と関係している追加のトラヒックなどを管理することが極めて困難なものとなり得る。
【特許文献１】
ＷＯ００３６７８８（ＰＣＴ／ＤＥ９９／０３９２１）
【発明の開示】
【０００８】
従って、ＷＯ００３６７８８に記載された発明は二つのシステムを採用していて、その第一のものは監督された学習方法であり、これは個々の網管理者の特性を学習する方法であり、また第二のものは原因を示す網方法であり、これはユーザとは独立してはいるが、アプリケーション（application）応用に固有のものであり、複数の応用特有の規則を備えている。両方のシステムが、入力として、網データを受領し（このデータは網上を移動しているものである）、網自体の状態と関係している。
【０００９】
ＷＯ００３６７８８と比較すると、本発明の実施例は、検出されたトラヒックのフローパターンを用いて網上に置かれているシステム内の問題を識別することに関している。ＷＯ００３６７８８は網管理アプリケーションからデータを受領することを論じてはいるが、ＷＯ００３６７８８は問題を網自体の状態と同一視することと関係しているように見え、また、特定のシステムもしくは応用という情況の中でログされたデータのインパクトを解析はしていない。ＷＯ００３６７８８は網レベルではっきりと動作するのであるから、これは予期されることになることである。
【００１０】
この発明の第一の特徴によると、通信網上で作動するシステムに係る振舞いパターンを識別する方法が提供され、該システムは複数の、サーバ計算機とクライアント計算機とを含み、それにより少くとも若干のサーバ計算機は該通信網上でいくつかのクライアント計算機との間でデータを配信し、また受信するようになっている。該方法は、
（ａ）該システム内部で送られたデータに係るデータを受信する段階であって、受信した各データアイテムは、該システム内部で該データアイテムが送られた計算機を識別するものと、
（ｂ）該受信したデータを該システム内部で送られたデータの分布を示している提示（representation）に、識別された計算機の機能として、組織する段階と、
（ｃ）該提示を用いて分類手段を学習訓練して複数の振舞い（behavior）形式を認識する段階とを備えている。
【００１１】
したがって、既知の方法とは対照的に、この発明の方法はデータの特徴又は形式について何らの仮定も置かず、代ってシステム内部での活動のレベルに基づいて振舞いを分類する。さらにシステム内部での送られたデータアイテムもしくは“データトラヒック”の分布を識別する提示を創り出す。本発明のこの特色こそは既知の方法及び／又はシステムのいずれにも記述されていないものである。
【００１２】
このような提示を創ることは、電子メール、とりわけＴＥＬＮＥＴとＦＴＰシステムのような計算機間でデータを送ることに専用とされるシステムにとってはとくに有益なことである。電子メールシステムの場合には、電子メールビールスは電子メールを送信しまた受信している人々のトポロジカルな（topological）分布に従って拡散することがありそうなことである。このことはときには全く局所的なこととなり得るのであり、例えば電子メールは同じサブネット（subnet）上の人々の間で、同じオフィス内部とか同じサイト（site）内で送られる。この関係の提示を使用することによって、拡散（spread）はより容易に捕捉されることになるはずであり、電子メールビールスの形式はそれが伝搬する初期段階で識別されることが可能である。さらに、この提示は電子メール活動の目視化のための基礎として使用でき、この目視化は電子メール活動のレベルにおける変化の実時間監視を可能とする。
【００１３】
好ましいのは、受信したデータがその振舞いの機能としてデータの群に配列されていて、それにより各群は振舞いの形式の特性を有するデータを備えるようにすることである。必要であれば、この提示は分類手段へ入力するのに適したフォーマットに変換されて分類手段に入力され、その上で、分類手段が変換された提示に従って学習訓練されて、それにより、分類手段が受信したデータを網の振舞い形式の一つに分類される。
【００１４】
好ましいのは各群が網の振舞いの“既知の”形式に対応していることである。ここでは、分類手段が網の振舞いの形式が知られている受信したデータを用いて学習訓練される。
【００１５】
一実施例では、受信したデータを提示に組織する段階は該システムにおけるサーバ及びクライアント計算機のトポロジカルな提示を作ることを含んでおり、また、各受信したデータアイテムについて、該識別された計算機と関係している活動のレベルを表わしているカウンタをインクレメントする段階を含んでいる。後に、活動のレベルを示している識別子が該識別された計算機に対応している該トポロジカルな提示のどの部分にも加えられる。
【００１６】
トポロジカルな提示は距離の測度の概念を黙示的に含んでいて、言い換えると“より近くの”ものはこの提示上では空間的により密接した位置にある。しかしながら、以下の記述の目的上、この距離の測定は網内でのホップの数（number of hops）で近さを表現してもよく、あるいはある種の他の空間（例えば“サーバ名称空間”とか“会社の部署階層構造空間”とか同類のもの）では近さを表現できるものとする。
【００１７】
一実施例では、このトポロジカルな提示は、該網の領域をそれぞれが表わしている複数の地域と、
該網の対応している領域内部のサーバ計算機をそれぞれが表わしている複数の部分地域と、
対応しているサーバ計算機に対してクライアントとして動作しているクライアント計算機をそれぞれが表わしている複数の副次の部分地域とを含むことができて、さらに、該群内の各データアイテムについては、
該識別された計算機に対応しているトポロジカルな提示のどの部分に対しても識別子を加える前記段階はどの部分地域または副次の部分地域でも対応がとれているものに対しても識別子を加える段階を含んでいる。
【００１８】
好ましいのは、提示を分類手段への入力に適したフォーマットに変換する段階は、第一に、該提示を網活動の頻度提示に変換することと、第二に該頻度表示をベクトルに変換して、このベクトルが分類手段への入力に適したものとすることとを含んでいることである。便利なのは、頻度提示を生成するために、前記提示に対してフーリエ変換が適用できて、そこからベクトル値を抽出するために該頻度提示はサブサンプリング、またはブートストラップ(bootstrap)方法を用いて、サンプリングが可能となることである。
【００１９】
これに代って、第二の実施形態では、
該受信したデータアイテムがさらに該システム内部で送られたデータの属性を識別する。この実施形態では一群のデータを提示に組織する段階は、該システム内のサーバ機械間のリンクにそれぞれが対応している複数のリストを創る段階を含み、また、
各受信したデータアイテムについて、該対応している送られたデータアイテムが通ったリンクを識別する段階と、
該識別されたリンクに対応しているリストを識別する段階と、
該データアイテムの属性を識別する段階と、及び
各識別された属性について、該識別されたリスト内で対応しているカウンタをインクレメントする段階とを含んでいる。
【００２０】
便利なのは、データが複数の時間期間に関して受領され、受領しているデータを提示に組織しまた変換する段階が該複数の時間期間の各々について実行されることである。これが意味するところは分類手段への入力用に複数の変換された提示が存在することである。さらに本発明の実施形態は異なるサイズの時間期間について実行されて、それにより異なる特徴的な時間スケールをもつ振舞いが捕捉できるようになることである。
【００２１】
好ましいのは、本発明の実施形態が異常な（aberrant）電子メール活動を識別するために適用されることであり、それにより、受領したデータが網上を移動している電子メールデータパケットであると識別することである。
【００２２】
未知の（unseen）データを分類するということについて見ると、これはいったん分類手段が上記の方法段階を用いて処理したデータを用いて学習訓練をしたならば実行が可能となる。そこでの未知のデータの分類は次の段階を含むことになる：
未知のデータに係るデータを受信する段階と、
いずれかの実施形態について上述したように、該受信したデータを提示に組織する段階と、
いずれかの実施形態について上述したように、該提示を該分類手段への入力に適したフォーマットに変換する段階と、
該変換された提示を受信したデータに従って学習訓練した分類手段に入力する段階と、
該分類手段を作動させて、該未知のデータと関係した網の振舞いの形式を識別するようにする段階とである。
【００２３】
好ましいのは、分類手段は動作上警報手段と関係していて、それによって、未知のデータの分類に依存して、警報が生成できるようになっている。一般に、データが何らかの損傷の原因となる潜在性をもっているとして分類されるとすると、網の一部を遮断するといった大規模な警報が生成される。
【００２４】
この発明の第二の特色によると、上述した方法に対応した装置が提供される。
【００２５】
以下の記述では、用語“ホスト”、“クライアント”、“デバイス”及び“電子メールデータ”が使用されている。これらの用語は次のように定義される。
【００２６】
“クライアント”−クライアント／サーバ関係における要求しているプログラムもしくはユーザ。
【００２７】
“ホスト”−インターネットもしくはイントラネットのような網内部で他の計算機に対して２ウェイのアクセスを有しているいずれもの計算機であり；クライアントはホストの特定形式である。
【００２８】
“デバイス”−網上で配信されたデータを受領するように動作可能ないずれもの機械。デバイスの例には、ホスト、クライアント、ルータ、スイッチ及びサーバを含んでいる。
【００２９】
“電子メールデータ”−ルート上の第一のデバイス上で実行している電子メールアプリケーションから発せられた第二のデバイス上で実行する電子メールアプリケーションについてのパケットデータ。電子メールデータはオーバーヘッドデータを含み、このデータはそのパケットが宛先に到達することを可能とし、パケットのヘッダ部分から検索される。とくに、電子メールデータは少くともプロトコル形式と、パケットのソースアドレスと、パケットの宛先アドレスと、パケットのペイロードのサイズと、ペイロードパケットの形式（アタッチメントが存在するかどうかを判断するために使用できる）。パケットはヘッダのプロトコル部分の審査から電子メールデータ形式として識別される。字句“電子メールパケットデータ”と“電子メールデータ”は以下の記述では互換性があるものとして使用される。
【００３０】
本発明の別な特色と利点とは本発明の好ましい実施形態に係る以下の記述から明らかであろう。これらの実施形態は例としての目的でのみ与えられるものであり、添付図面を参照して記述される。
【発明を実施するための最良の形態】
【００３１】
本発明の実施形態についての動作環境の全体像
図１は網１００の部分を示し、そこで動作している各種デバイスが備わっている。図１に示したような網は、複数の機能網（そのうちの一つは電子メール網である）として知覚できるものとなっている。電子メール網は複数の論理的電子メールドメイン内へ分離されるようにできて、その各々は複数のサーバ機械とクライアント機械であってそこで通信しているものを備えている。図１は単一の論理的電子メールドメインの一部を示している。
【００３２】
ここでは、網１００はルータＲを含み、このルータＲがデータを網内のデバイスに向けて当業界で知られている方法でルート設定し、またホスト機械Ｈ１，…，Ｈ７を含み、これが電子メールデータを含むデータを当業界で周知の方法で送受する。この図では、ルータＲとホスト機械Ｈ１，…，Ｈ７との名目数だけが明瞭にするために示されている。網１００はさらにいくつかの電子メールサーバＳ１，…，Ｓｎ（明瞭化のために三つだけを示す）を含んでいて、このサーバがホスト機械Ｈ１，…，Ｈ７から、あるいは他の電子メールサーバ（図示せず）から電子メールを受領して、他の宛先へ転送される状態にある電子メールの一時的な記憶を提供する。図１の中に示した破線のリンクは電子メールサーバとホスト機械との間を送られる電子メールトラヒックを示していて；他の通信については、各ホスト機械Ｈ１，…，Ｈ７は直接にルータＲと通信することができる。
【００３３】
網１００はコーポレート（corporate）網であってよく一般に多くの相互接続されたローカルエリア網（ＬＡＮ）を備えている。
【００３４】
上述したように、電子メールを介して通信する能力は“ビールス”によって食い物にされることができ、このビールスはデータをロードするデバイスとデータの損失との点で大規模な破壊を生じさせることができる。ビールス検出に応用される既知の方法は既知のビールスのライブラリィ（library）をこういった既知のビールスを探すためのソフトウェア（例えば、McAfee（ＴＭ）とDr Solomons（ＴＭ）であって、一般に“抗ビールス”ソフトウェアと呼ばれているもの）と一緒に維持している。こういった方法は、本質的には、既知のビールスに対応しているシグネチャ（signatures）を有するファイルを識別するためにファイルのバイトシグネチャ（byte-signatures）の解析を実行している。
【００３５】
こういった既知のアプローチでの問題はこのアプローチが反応性であることであり、もしあるビールスがホストの一つ、例えばＨ１に到達するとすると、一般にはビールスが以前に出逢ったことのある場合に限って（またホストＨ１がそのビールスに関して抗ビールスソフトウェアをインストールしたと仮定して）、抗ビールスソフトウェアが実効あるものとなる。したがって、もしホストＨ１がこれまでは未知の（unseen）ビールスを植え付けた電子メールを受領することとなると、ホストＨ１に対して危害を生じさせることになり、その理由は現在ではビールス活動を検出して停止させるための信頼できる手段はビールス活動が検出されるまでは、すなわち、危害を生じさせた後までは、存在していないことによる。
【００３６】
本発明の実施形態は、電子メールビールスを先を見越して検出することに関係していて、電子メールビールスの拡散と、したがって電子メールビールスに起因する損失とが一つの機械から他の機械に向けての伝送に依存しているという決定的な実状を使用するようにすることと関係している。電子メールトラヒックを監視できるので、ビールスの伝搬の特徴は重大な損失をビールスが生じさせる前に検出される可能性があるようにすることができる。
【００３７】
とくに、実施形態は電子メールトラフィックの巨視的な振舞いを、異常な振舞いを識別するために電子メール網トラヒックの状態を監視するための方法と装置とを採用することにより考察している。
【００３８】
本発明の実施形態の全体像
本質的なこととして、実施形態は複数の分類群、又はプロフィルを識別するために以前に見た電子メールデータを解析するが、各群又はプロフィルは特定形式の電子メールの振舞いを示しており、例えば、実施形態は電子メールデータを複数の時間期間にわたって集めて、またそのデータを複数のプロフィルに群形成するが、各プロフィルはある種の形式の電子メールの振舞いの提示であり、例えば通常の活動プロフィル（Ｐ１）や、ビジィな活動プロフィル（Ｐ２）や、高速拡散のビールスプロフィル（Ｐ３）や、低速拡散のビールスプロフィル（Ｐ４）や、“チェーンメール”プロフィル（Ｐ５）である。
【００３９】
新しい電子メールデータが到着するときには、実施形態は電子メールデータを既知のプロフィルＰ１，…，Ｐ５の一つに分類することを試みる。もしデータが既知のプロフィルＰ１，…，Ｐ５の一つの中に入るとすると、所定の動作が実行できて、例えばある実施例では、システムアドミニストレータ（administrator）に警報を送る追加の何らかの手段が存在し、あるいは電子メールデータが形式Ｐ３またはＰ４であるときには、別の診断応用がある。ここで、実施形態の利点は現状の方法で可能とされているよりもビールス伝搬の初期段階における異常な振舞いを識別する能力を含んでいる。
【００４０】
実施例はまた電子メール活動を目視可能とする手段を含み、本質的には網を取囲んだ電子メールトラヒックの分布を目視可能とするのにあてられる。好都合なのは、これがシステムアドミニストレータ（この人は一般に電子メールトラヒックの本質についてかなりの経験を有している）にとって、使用できない振舞いを目視的に同定識別することができるようにする。
【００４１】
第一実施例
図２を参照して、本発明の第一実施例をより詳細に記述して行く。
【００４２】
図２はホストＨ１を示し、Ｈ１は中央処理ユニット（ＣＰＵ）２０１と、メモリユニット２０３と、入力／出力デバイス２０５であってホストＨ１を網１００に接続するためのものと、メモリ２０７と、一組のオペレーテングシステムプログラム２１９（これがホストＨ１の低レベル動作を制御し、かつコーディネートする）とを備えている。こういった構成は当業界で周知のものである。
【００４３】
本発明の実施例は一般にビールス検出器２００と呼ばれていて、少くとも若干のプログラム２１１，２１３，２１５，２１７，２２１，２２３を含んでいる。これらのプログラムはメモリ２０７上に記憶され、ＣＰＵ２０１によって処理可能である。
【００４４】
プログラムはデータを収集するためのプログラム２１１と、収集されたデータを変換するためのプログラム２１３と、処理されたデータを分類するためのプログラム２１７とを含んでいる。さらに、実施例は変換されたデータを処理するためのプログラム２１５と、変換されたデータを目視化するためのプログラム２２１と、分類用プログラム２１７の出力を監視するためのプログラム２２３とを含むことができる。こういったプログラム２１５，２２１，２２３は以下にさらに詳述されている。
【００４５】
収集用プログラム２１７は未処理の電子メールデータを収集する。一般にはファイヤウォール構成Ｆ１からアクセス可能なログファイルＬ１か、あるいは未処理のデータ（図示せず）を収集することを目的としている電子メール網内に埋込まれているプロセスかのどちらかからアクセス可能なデータを収集する。
【００４６】
変換用プログラム２１３は、入力として、収集した電子メールデータを受領し、それを提示Ｄ１に変換して、また分類用プログラム２１７は、入力として、提示Ｄ１を受領し、提示Ｄ１を分類器に入力する。適切な分類器は何らかの監督を受けている学習手段を含んでいて、例えばそれがニューラル網とかパターン整合器などである。これについては以下で詳述されている。
【００４７】
提示Ｄ１の形式と、分類用プログラム２１７で利用される分類器とに依存して、処理用プログラム２１５が提示Ｄ１を前もって処理するのに使用されてよく、提示Ｄ１を分類用プログラム２１７によって処理されることができる形式に変換させるようにする。
【００４８】
加えて、目視化用プログラム２２１を、提示Ｄ１を目視化のために使用できる。
【００４９】
ビールス検出器２００は代って電子メールサーバＳ１上で実行できるし、また網内に埋込まれた特定目的にかなうように作られたデバイス上で実行できる。
【００５０】
ビールスの検出器２００の動作は、本発明の第一の実施例によるものとして、ここで図３に示した流れ図と、図４ａ，４ｂ，４ｃに示した模式図とを参照して記述される。
【００５１】
段階Ｓ３．１では、収集用プログラム２１１がログファイルＬ１から電子メールデータを収集する。一般に、収集用プログラム２１１は予め定めた時間期間Ｔ１内部に入る電子メールデータを収集する。次に、変換用プログラム２１３は収集したデータを、収集したデータのソースアドレスの機能（function）として、提示Ｄ１に配列する。ここでは、例えば、インターネットスタイルアドレス（scooby@scoobydoo.com）か、機械名（MYPC03 on server SERVER01）か、機械ＩＰアドレス（132.146.196.67）か機械もしくはサーバ名（User；JEDI, Machine：MYPC03）かのいずれかの機能となっている。
【００５２】
どんな識別するアドレスも、もしそれによって網１００内の機械のある種のトポロジカル提示を可能にするのであれば、使用でき、それによって関連するアドレスは関連しないアドレスよりもお互い近くに位置される。この状況では、関連するアドレスは網上で接続されていることを意味することができ、例えば、電子メールサーバに接続された電子メールクライアントがお互いと及び該電子メールサーバとの両方に関連している。
【００５３】
こうして収集されたデータの各アイテムに関して、段階３．２において変換プログラム２１３は対応するソースアドレスを判断し、そして段階Ｓ３．３において変換プログラム２１３は該ソースアドレスを網トポロジー（topology）内の対応する場所に、そして提示Ｄ１内の機械４０７ｉ（ここでｉは特定の機械を識別する）に変換する。
【００５４】
図４ａは一つの可能性のある提示である二次元（２Ｄ）の目視可能な提示（visual presentation）を示している。ここで図４ａは電子メールクライアント機械と電子メールサーバとの間の接続関係（connectivity）の目視可能な提示を示していて：
・電子メールドメイン４０３1…iは論理的電子メールドメインの一部であるサーバ領域に対応しており；
・サーバ領域４０５1…j はサーバ領域４０３i 内部のサーバ（例えば、SERVER01という名称をもつＳ１）に対応しており；また
・機械４０７1…kの各々はサーバ４０５j のクライアントである機械（例えば、MYPC03の名称をもつＨ１）に対応している。
【００５５】
加えて、機械４０７1…kは、対応しているサーバ領域４０５j 内部でアルファベット名称に従ってさらに配置され（そして目視化され）ることができ、例えば名称の第一の文字は領域内部での左から右への位置を決め、また第二の文字は領域内部で上から下への位置を決める。
【００５６】
機械アドレスの位置は必ずしも独特なものである必要はない。特定のサーバ領域４０５j 内部ではそこにあるいくつかの機械４０７1…kを一つの場所にまとめることが有益であってよく、とくに例えば企業体（corporate）電子メール網では全体で多数のクライアント機械が存在する場合にこれが有益となる。
【００５７】
次に、段階３．４では、各機械については（この機械は図４ａで見るように４０３i ，４０５j ，４０７k として識別できる）、変換用プログラム２１３は関係している電子メール活動を表わしている値を計算する。この値は、以後活動値（activity value）４０９として記述することとするが、本質にはどのくらいの数の電子メールパケットが各機械から発せられているか定量化し、またある機械が発生元となっているパケットの数を加算することにより計算される。各計算された活動値４０９は次に網トポロジィ内での対応する機械の場所で提示Ｄ１に対して加算され、それによって網トポロジィ提示Ｄ１上の電子メール活動レベルの分布を生成することになる。
【００５８】
好ましくは、段階Ｓ３．５において、活動値４０９が正規化（ノーマライズ）される。この正規化は線形となることができて、例えば活動値は最大活動レベルによって正規化できて、レンジ［０，１．０］内に記録されるか、あるいは例えば対数といった非線形とすることができる。
【００５９】
目視化プログラム２２１は、段階Ｓ３．５の出力、すなわち個々の機械４０７k での活動のレベルを目視化するために使用されることができる。このような出力の一つが図４ｂに示されていて、これは時間期間Ｔ１の間の電子メール活動を表わしている。暗いスポット４１１は（収集したデータのこの特定組の中で）電子メールを送ってきた機械の一つまたはクラスタ（cluster）を示し、また白い領域は電子メールを送っていない機械を示している（ここで注目したいのは、図４ｂのスケールと機械４０７k 間の距離とが与えられると、活動レベルはより大きなスポットに集結するように出現できるということである）。
【００６０】
この実施例では、スポットの暗さは活動のレベルに従って格付けがされていて、それによって、一番暗いスポットは活動の最高レベルを表わし、白い領域はゼロ活動を表わし、灰色スケールは０と１との間の活動のレベルを示している。
【００６１】
これに代って、活動は二値形式で表わすことができ、この場合には、活動のいずれかのレベルが暗いスポットを指定し、ゼロ活動が白スポットを指定される。
【００６２】
続いて、処理用プログラム２１５が提示Ｄ１を分類に適しているフォーマットに変換する。上述のように、処理用プログラム２１５は本発明のすべての実施形態にとって本質的なものではないが、今とりあげている実施例では提示Ｄ１がデバイス間の接続関係のトポロジカルな提示となっていて、このような変換が必要となっている。本質的には、機械（及び機械の活動）の正確な位置というよりはむしろ、全体の分布が分類にとってはより影響を受け易いものとなっている。
【００６３】
ここで段階Ｓ３．６では処理用プログラム２１５がフーリエ変換を活動の分布に適用し（図４ｂに示してある）、それにより図５ａに示すように、活動分布の提示に基づいた頻度を生成する。フーリエ変換は当業者にとって周知のものであり、トポロジカルな提示を変換するために適用することができるいくつかの方法のうちの一つとなっている。フーリエ変換についてのより詳細に関しては、読者は“A Student’s Guide to Fourier Transforms：With Application in Physics and Engineering”J.F.James, Cambridge University Pr(Sd)；ISBN：0521462983を参照できる。
【００６４】
次に、段階Ｓ３．７では、処理用プログラム２１５が頻度空間をマトリックスに分けて、図５ｂに示してあるようにし、このマトリックスは本実施例では５×５マトリックスとなっている。処理用プログラム２１５は、フーリエ変換提示をマトリックス形式に変換するためにサブサンプリングもしくはブートストラップ(bootstrap)方法を適用できる。サブサンプリング方法はいわゆる“再サンプリング統計方法（re-sampling statistical methods）”であって、磁気共鳴作像（ＭＲＩ）を含む画像形式の範囲のサンプリングと、頻度（frequency）空間提示とでの使用について知られているものである。サブサンプリングに関する情報については、とくに頻度ドメイン内でのサブサンプリングに関しては、読者は“wavelets and filter banks”by Strang and Nguyen ISBN 0-9614088-7-1 Wellesley-Cambridge Press, BOX 812060, Wellesley MA 02181の第３章、もしくはもっと一般的には“Subsampling”（Springer Series in Statistics）by Dimitris N.Politis, Joseph P.Romano, Michael Wolfを参照できる。
【００６５】
頻度空間をこのように分けることの利点は、処理されたデータがそこで分類のために好都合な形式にされることにある。
【００６６】
その後、分類用プログラム２１７は処理されたデータを分類するために分類器を学習訓練する。分類用プログラム２１７は数多くの異なる形式の分類器の一つを利用することができて、この分類器は監督された学習によって訓練されることができるものであり、その例はニューラル網、統計分類器、パターン認識器などであり、その各々は当業者にとって周知のものである。本質的には、こういった分類器は“既知の”入力と出力との対についての学習訓練用組を用いて訓練され、入力から出力へ向けたマッピング(mapping)を学習するために訓練される。読者は“Machine Learning”T.M. Mitchell, McGraw-Hill 1997をさらに情報を得るために参照できる。
【００６７】
本発明の実施例では、“既知の”入力は時間期間Ｔ１の間で収集された電子メールデータに対応している電子メールの振舞いの形式である。一般に、経験を積んだシステムアドミニストレータ（統括者）は、時間期間Ｔi 内で網１００の中を循環している電子メールデータの特徴を識別して、それによりデータにラベル付けをする。例えば、時間期間Ｔ１の間に網１００が“正常に”振舞いをしていることが知られたとし、また第二の時間期間Ｔ３の間に網がMelissaビールスとかLovebug（高速拡散性ビールスである）のようなビールス攻撃を受けていることが知られたとする。システムアドミニストレータは時間期間Ｔ１の間に網上を移動したデータを“正常な電子メールの振舞い”Ｐ１としてラベルを付し、これが次に時間期間Ｔ１の間に収集された電子メールデータ用の“既知”の出力となる。
【００６８】
分類用プログラム２１７はここでこの時間期間Ｔ１に対応しているマトリックスデータを分類器に入力して、分類器を学習訓練してプロフィルＰ１（正常の電子メール振舞い）に対応している出力を生成する。同じやり方で、電子メールデータであって第二の時間期間Ｔ３の間（このとき網１００は高速拡散ビールスの攻撃を受けていることが知られている）に段階Ｓ３．１で収集されたものが上述のように（段階Ｓ３．２〜Ｓ３．７）処理されて、分類器はこのマトリックスデータについてプロフィルＰ３に対応している出力を生成するように学習訓練される。
【００６９】
ここで段階Ｓ３．８では、現在の例においては、分類用プログラム２１７は入力として５×５マトリックスを受領し、これが本質的に２５個の入力となっていて、これをフィードフォワード（feed forward）多層パーセプトロン(perceptron)（ＭＬＰ）ニューラル網に入力する。図６を見ると、ＭＬＰ６００は２５個の入力ノードを有する入力レイヤ６０１を備えていて、各ノードはマトリックス内に要素に対応しており、また８個のノードを有する隠れたレイヤ６０３と、さらに５個のノードを有する出力レイヤ６０５を備えている。入力レイヤ６０１内の各ノードは隠れたレイヤ６０３内の各ノードと１対全部の接続を有していて、また隠れたレイヤ６０３内の各ノードは、図６に示すように、出力レイヤ６０５内の各ノードと１対全部の接続を有している。ノード間接続上では調節可能な重み付けが存在し、この重み付けは明瞭化のために図６では一般にＷとして称されている。隠れたレイヤと出力レイヤ６０３，６０５内の多数のノードについての選択は設計上の選択であり、当業者にとっては明らかなことである。
【００７０】
段階３．９では、分類用手段２１７がＭＬＰ６００を訓練して、“既知の”出力を生成する。本質的には、マトリックスは入力レイヤへ入力されて、複数の学習用繰返しにわたりレイヤ６０１，６０３，６０５内のノード間での重み付けを調節するために使用される。図６に示したようなＭＬＰについては、周知の学習訓練用アルゴリズムは後方伝搬(back-propagation)アルゴリズムであり、これがＭＬＰ６００により生成された出力と所望出力との間のエラーを“フィードバック”して、ノード間重み付けＷを調節して、こういったエラーを低減するようにする。このような学習訓練方法は当業者にとって周知であり、上述した参考文献に記述されているところである。
【００７１】
未知のデータを正しく分類するためにＭＬＰ６００の能力を確信することは明らかに、ＭＰＬ６００が訓練された方法に依存していて、この能力はＭＬＰを訓練するために使用されたデータの数と大まかに釣合がとれている。したがって、電子メール振舞いの“既知の”形式の各々について、複数の時間期間Ｔijからのデータで、その電子メールの振舞いに従って振舞うことが知られているものが、ＭＬＰ６００を訓練するために使用される。ここで添字ｉは電子メールの振舞いの形式に係り、また添字ｊはデータが収集される時間期間に係る。要約すると、好ましくは段階Ｓ３．１〜Ｓ３．９はｉ×ｊ回繰返され、“既知”の電子メール振舞いｉの各形式に対応しているデータのｊ組について繰返される。
【００７２】
上記したように段階Ｓ３．１〜Ｓ３．９を繰返すと、出力レイヤ６０５内の各ノードは上述したプロフィルＰi の一つを代表するすることになる。例えば、正常の活動プロフィル（Ｐ１）、ビジィ活動プロフィル（Ｐ２）、高速拡散ビールスプロフィル（Ｐ３）、低速拡散ビールスプロフィル（Ｐ４）、及び“チェーンメイル”プロフィル（Ｐ５）を代表することになる。ひとたびＭＬＰ６００が学習訓練されると、ＭＬＰが未知のデータを分類するために使用されることができて、典型的なのは特定の時間期間で捕捉されたデータである。ビールス検出器２００は段階Ｓ３．１〜Ｓ３．８により未知データを処理するが、段階Ｓ３．９によるように未知データを用いてＭＬＰ６００を学習訓練するよりむしろ、分類用プログラム２１７は分類器６００を用いて未知データの各々を分類する。一般に、各未知のデータについては、ＭＬＰ６００が出力レイヤ６０５をまたいで分布を生成することになり、言い換えると、５個のノードの各々はある値を持つことになる。未知のデータは最大の値を有しているノードはどれにも指定される。プロフィルＰ１，…，Ｐ５の一つを各ノードは表わしているので、未知データは対応して分類されることになる。
【００７３】
“電子メールの伝搬レート”（プロフィルＰ３とＰ４）により分類することの利点の一つは、ビールスの特定性質に係らず、実施例が電子メール伝搬の特定レートを生み出す振舞いを識別することができることである。上述のように、ビールスの主要な特徴の一つはビールスが電子メールに依存して拡散することであり、これによって電子メール伝搬のレートを監視することが異常な電子メール活動の信頼できる表示インジケータに多分なるということである。
【００７４】
実施例はプログラム２２３を追加的に含むことができて、このプログラムは出力レイヤ６０５上のノードを監視して、未知のデータのどんなアイテムもビールスのある種のもの（例えばＰ３，Ｐ４，Ｐ５）として分類されたときには、警報を生成するためにあたる。好ましくは、生成された警報の形式はこの分類に依存すべきである。したがって、例えば、もし電子メールの振舞いがプロフィルＰ３（“高速ビールス拡散”）として分類されるとすると、ドラコン流の（draconian）応答であって網の一部を遮断するといったものが活性化されるようにできるし；もし電子メールの振舞いがプロフィルＰ４（遅い／良性のビールス拡散）として分類されるとすると、“電子メールメッセージから形式Ｘのすべてのアタッチメントをはぎ取る”といった応答が活性化されるようにできるし；もし電子メールの振舞いがプロフィルＰ５（“チェーンメール”）として分類されると、すべての電子メールユーザは電子メールを送付しないように求める警告メッセージを送られてもよい。
【００７５】
第二実施例
ここで図７に示した流れ図と、図８に示した模式図とを参照して第二の実施例を記述する。第二の実施例は、一般に図１，２及び６のものと似ていて、ここでは類似部品は同様の参照番号を付与し、詳述はしないこととする。
【００７６】
第一に、収集用プログラム２１１は網１００内を流れる電子メールトラヒックを代表するデータを集める。図８を参照すると、これは本質的にはリンクＬi-j 上を移動している電子メールを代表するデータを集めることと等価である。したがって、段階Ｓ７．１では、所定時間期間Ｔ１の間にサーバＳ１，…，Ｓ８を通過した電子メールトラヒックを示しているデータが前記サーバの各々から集められる。
【００７７】
段階Ｓ７．２では、収集用プログラム２１１が、集められたデータのアイテムを、データのアイテムが記憶されているサーバの機能として組織し、それによっていずれもの与えられたサーバが接続される相手のサーバの機能として組織される。例えば、再び図８を参照して、サーバＳ２を考慮すると、そこから集められたデータが三つのリストに組織され、第一のものはリンクＬ2-6 に対応し、第二のものはリンクＬ2-3 に対応し、第三のものはリンクＬ2-1 に対応している。
【００７８】
各サーバＳ１，…，Ｓ８がすべての到来しまた送出される電子メールの記録を維持していると仮定し、サーバＳ２から集めたデータがいったん解析されたとすると、サーバＳ１上でデータを解析する必要はなく、その理由は、この例ではサーバＳ１がサーバＳ２にだけ接続されており、したがってリンクＬ2-1 に関する同じ情報を記憶するだけであって、この情報はサーバＳ２についてすでに解析済みであることによる。しかしながら、サーバＳ３とＳ６とから集めたデータはさらに解析が必要であり、その理由は、これらのサーバＳ３とＳ６とは各々が他の電子メールサーバであるＳ４とＳ５及びＳ７とＳ８にそれぞれ接続されていることによる。段階Ｓ７．２の終りでは、七つのリストがあることになり、その各々がリンクに対応している。
【００７９】
各リストはその中に多数のコラム（columns）を有していて、その各々が識別用の電子メール特性を表わしていて、それが電子メール属性（ＡＴＴ）と呼ばれるものであり、電子メールのサイズのようなもののほか、アタッチメントの存在または不存在、前もって定義された網１００のサブドメイン、及び／又は当業者にとって明白とされる他の特性などがこれにあたる。もし電子メールの解析の結果、電子メールがある属性をもっているものとして識別されると、この属性に対応しているカウンタ値がインクレメントされる。
【００８０】
ここで段階Ｓ７．３では、各リストについて、その中のデータの各アイテムは解析されて、対応している電子メール属性を得るようにされ、また段階Ｓ７．４ではカウンタ値であって、そのデータアイテムについて得られた属性がどれであるかに対応しているカウンタ値がインクレメントされる。
【００８１】
例えば、もし属性が、したがってリスト内のコラムが：リンク上を転送される電子メールの数；Visual Basic（ＴＭ）アタッチメントを備えた電子メール；サイズが１ＭＢよりも大きい電子メールであると、すべてのリスト内のすべてのデータの解析の終りでは、リンクＬ2-3 に対応しているリストは次の表１のものを備えていてよい。
【表１】
2004537916.tif 000003
【００８２】
段階Ｓ７．５では、変換用プログラム２１３はリストデータを二次元（２Ｄ）提示Ｄ２に配列し、ここでは第一の次元がサーバＬi-j 間のリンクを表わし、また第二の次元はリンク（ＡＴＴ１，ＡＴＴ２，ＡＴＴ３など）上を通過する電子メールを特徴付けるために使用される属性を表わしている。図８から見ることができるように、この特定の実施例ではリンクの数は７である。属性の数が３であるとすると、Ｄ２は３×７マトリックス８０１である。属性のいずれかの数（ｎ）が使用できることが理解され、それによってｐのリンクについてＤ２が一般にｎ×ｐマトリックスとなる。
【００８３】
好ましいのは、段階７．６で、マトリックスの値が正規化されることである。本実施例では、処理用プログラム２１５は必要とされず、その理由は提示Ｄ２は分類を受け易いフォーマットにすでになっていることによる。
【００８４】
次に、分類用プログラム２１７は処理されたデータを分類する。第一の実施例についてのように、分類用プログラム２１７は監督の下での学習によって訓練されることが可能な分類器の数多くの異なる形式の一つを利用してよく、例えば、ニューラル網、統計的分類器、パターン認識器などが利用され、こういったものの各々は、第一の実施例について記述したように、当業者にとって周知のものである。
【００８５】
ここでこの実施例での段階Ｓ７．７では、分類用プログラム２１７が入力として３×７マトリックスを受領し、このマトリックスは本質的に２１入力であり、第一の実施例に関して記述したように、フィードフォワードマルチレイヤパーセプトロン（feed forward multi layer perceptron）（ＭＬＰ）ニューラル網に向けて２１入力を入力する。もう一度図６を参照すると、第二の実施例では、ＭＬＰ６００は、２１入力ノードを有する入力レイヤ６０１を備えることができて、各ノードはマトリックス内の要素に対応しており、また８ノードを有する隠れたレイヤ６０３と、５ノードを有する出力レイヤ６０５を備えている。
【００８６】
段階Ｓ７．８では、分類用手段２１７は、第一の実施例に関して上述したように、入力を用いてＭＬＰ９００を訓練する。
【００８７】
追加の詳細と他の実施例
実施例は、継続する時間期間Ｔ，Ｔ＋δＴ，Ｔ＋２δＴ等についてデータを解析するために、さらに加えて、使用することができ、ここでＴは第一の時間期間であり、またＴ＋δＴ，Ｔ＋２δＴはそれぞれＴに続く継続的な時間期間である。この場合に、目視化用プログラム２２１は図４ｃに示してあるように、電子メール活動についての、対応している継続している提示を目視化することができるものである。これが電子メール活動のダイナミクス（dynamics）を観察対象となるようにし、このダイナミクス自体が異常な電子メール活動及び／又は電子メールサーバローデングを識別することを支援できるものである。
【００８８】
リンクＬi-j 上を流れている電子メールトラヒックを集めることの代替としてサーバを通って流れているデータを集めることができる、言い換えると、サーバへ向う及び／又はサーバからの電子メールによって採用される経路とは独立して集められる。この方法で電子メールトラヒックを特徴付けることは、第二の実施例で記述された方法よりももっと効果的なものとなりそうであり、その理由は段階Ｓ７．２が電子メールデータを記憶するサーバの機能としてデータを組織することを単に備えているだけであることによる。この実施例では八つのリストが存在することになり、その各々がサーバに対応している。段階Ｓ７．３〜Ｓ７．７は上述したように実行される。
【００８９】
データが収集される時間期間Ｔ１の選定は、重要なことであり、それは異なるレートでビールスが拡散することにより、また振舞いの異なるクラスを識別するために、そこで時間期間Ｔ１のレンジ上でデータを集めることが必要となることができるからである。例えば、ビールスの第一の形式は潜在的に電子メールの受領で自動的に拡散する潜在的能力をもつことができて、非常に高速の機械／網（machine／network）時間拡散に通じていて、また第二の形式のビールスは人間の時間すなわち感染が拡がることができるようになる前に電子メールアタッチメントを人間の読者が開くことに依存した時間で拡散可能なものである。したがって、分、時間、または日といったオーダーの時間期間Ｔ１をもっているものである。
【００９０】
実施例は異なる分類器をもつように修正可能であり、各分類器は特定の時間期間Ｔ１に指定される。言い換えると、一つの時間期間Ｔ１a で集められた電子メールが第一の分類器Ｃa によって分類されてよく、また第二の時間期間Ｔ１b で集められた電子メールは第二の分類器Ｃb によって分類されてよい。各分類器は電子メールの振舞いの異なる形式を検出することになりそうである。
【００９１】
こういった時間期間Ｔ１a とＴ１b の継続時間は実験的に判断される。
【００９２】
分類用プログラム２１７はハードワイヤとすることができ、例えばニューラル網計算機チップとすることができる。
【００９３】
上述した実施例では、データは電子メールのソースアドレスの機能として組織されており、言い換えるとログファイルＬ１から集めたデータは（あるいは第二の実施例では、サーバＳ１，…，Ｓｎ上に記憶されたファイルは）、ソース（電子メールまたは機械）アドレスの機能として提示Ｄ１，Ｄ２に変換される。これに代るか、追加して、データは宛先アドレスの機能として提示されることができ、データがソースと宛先との両アドレスの機能として提示されたとすると、両方のパラメータ（ソースと宛先アドレス）は横並びに（side-by-side）接合されることができる。
【００９４】
現在の実施例は、各時間期間Ｔ１について、ログファイルＬ１もしくはサーバＳ１，…，Ｓｎ内のデータのすべてが電子メールの振舞いを分類するために使用されている。これに代るものとして、またとくに処理の負荷が問題となったとすると、各ｎ番目の電子メールエントリィが処理のために選ばれるようにでき、ここでｎの値はランダムに選ばれるものとする。
【００９５】
ファイヤウォールＦ１に取付けられるという代替については、ログファイルＬ１は電子メールサーバＳ１，…，Ｓ７の一つにアクセスすることができ；別の代替については、また網１００の構成に依存してデータが複数のログファイルから集めることができる。
【００９６】
上述の実施例は“監督下にある学習訓練（supervised training）”分類器を利用しており、これが意味するところは、関心のある電子メール活動の各（人手により予め定めた）クラスについて訓練するために適切な学習訓練用データが存在することを仮定していることである。その結果、分類器はどんな新しい（訓練されていない）振舞いもこのモデルの中で識別しないことになるが、予め定めたプロフィルＰ１，…，Ｐ５の一つに振舞いを分類しようと試みる。
【００９７】
代りのものとして、また新しいプロフィルＰｉを自治的に（autonomously）識別するために、分類用プログラム２１７は“監督下にない学習（unsupervised learning）”手段を含むことができる。この手段はKohonen Networkのようなものである。このような監督下にない学習用の手段は新しいプロフィルを自己組織作りプロセスを介して識別し、また可能性のあるプロフィルを後に振舞いが分類できるようにするものに修正する。
【００９８】
当業者にとって理解できるように、上述した本発明はいくつかの計算機プログラムとして実施できる。これらのプログラムは各種の伝送及び／又は記憶媒体上に含ませることができ、媒体には、フロッピィディスク、ＣＤ−ＲＯＭ、あるいは光学的に読取り可能な媒体、或いは磁気テープが含まれ、それによってプログラムがいくつかの汎用計算機上にロードできたり、あるいは適当な伝送媒体を用いて計算機網上にダウンロードすることができる。
【００９９】
本発明のプログラム２１１，２１３，２１５，２１７，２２１，２２３は好都合にもＣプログラム言語を用いて記述されるが、そのことは本発明にとっての本質的部分でないことが理解されるべきである。
【図面の簡単な説明】
【０１００】
【図１】この発明の実施例が動作することになる網の模式図。
【図２】図１の無線網の一部を含むデバイスの部品の構成図。
【図３】この発明の実施例による網の振舞いを分類する方法を示す流れ図。
【図４ａ】図３の方法の特色を示す模式図。
【図４ｂ】図３の方法の別の特色を示す模式図。
【図４ｃ】図３の方法の別の特色を示している模式図。
【図５ａ】図３の方法のさらに別の特色を示している模式図。
【図５ｂ】図３の方法の他の特色を示す模式図。
【図６】この発明の実施例により利用される分類器を示す模式図。
【図７】この発明の第二の実施例による網の振舞いを分類する方法を示す流れ図。
【図８】図７の方法の特色を示す模式図。
【図１】
2004537916.tif 000004
【図２】
2004537916.tif 000005
【図３】
2004537916.tif 000006
【図４ａ】
2004537916.tif 000007
【図４ｂ】
2004537916.tif 000008
【図４ｃ】
2004537916.tif 000009
【図５ａ】
2004537916.tif 000010
【図５ｂ】
2004537916.tif 000011
【図６】
2004537916.tif 000012
【図７】
2004537916.tif 000013
【図８】
2004537916.tif 000014
【国際公開パンフレット】
2004537916.tif 000015
2004537916.tif 000016
2004537916.tif 000017
2004537916.tif 000018
2004537916.tif 000019
2004537916.tif 000020
2004537916.tif 000021
2004537916.tif 000022
2004537916.tif 000023
2004537916.tif 000024
2004537916.tif 000025
2004537916.tif 000026
2004537916.tif 000027
2004537916.tif 000028
2004537916.tif 000029
2004537916.tif 000030
2004537916.tif 000031
2004537916.tif 000032
2004537916.tif 000033
2004537916.tif 000034
2004537916.tif 000035
2004537916.tif 000036
2004537916.tif 000037
2004537916.tif 000038
2004537916.tif 000039
2004537916.tif 000040
2004537916.tif 000041
2004537916.tif 000042
2004537916.tif 000043
2004537916.tif 000044
2004537916.tif 000045
2004537916.tif 000046
2004537916.tif 000047
2004537916.tif 000048
2004537916.tif 000049
2004537916.tif 000050
2004537916.tif 000051
【国際公開パンフレット（コレクトバージョン）】
2004537916.tif 000052
2004537916.tif 000053
【国際調査報告】
2004537916.tif 000054
2004537916.tif 000055