(57)【要約】  脅威検知部８１は、取得されたログから脅威を表す可能性のあるログを検知する。フラグ化処理部８２は、ログが満たす条件に応じて設定されるフラグを規定したフラグ条件に基づいて、検知されたログをフラグ化したフラグ化データを生成する。判別部８３は、フラグを説明変数とし、脅威を示すか否かを目的変数とするモデルにフラグ化データを適用して、そのフラグ化データの生成元のログが脅威を示すログか否かを判別する。出力部８４は、そのログが脅威を示すログか否かを示す判別結果を出力する。
2019181005.tif 000002
【特許請求の範囲】
【請求項１】
取得されたログから脅威を表す可能性のあるログを検知する脅威検知部と、
ログが満たす条件に応じて設定されるフラグを規定したフラグ条件に基づいて、検知された前記ログをフラグ化したフラグ化データを生成するフラグ化処理部と、
前記フラグを説明変数とし、脅威を示すか否かを目的変数とするモデルに前記フラグ化データを適用して、当該フラグ化データの生成元のログが脅威を示すログか否かを判別する判別部と、
前記ログが脅威を示すログか否かを示す判別結果を出力する出力部とを備えた
ことを特徴とする脅威分析システム。
【請求項２】
脅威検知部は、脅威を表す可能性のあるメールのログを検知し、
フラグ化処理部は、前記メールの送信元に所定の文字列が含まれるか否かを判断するフラグ条件に基づいてフラグ化データを生成する
請求項１記載の脅威分析システム。
【請求項３】
フラグ条件は、過去に脅威を示すと判断されたログに含まれる文字列のうち、予め定めた頻度を超える文字列を含むか否か判断する条件を含む
請求項１または請求項２記載の脅威分析システム。
【請求項４】
フラグ条件として、判別する対象のログのサイズの分布に応じて、フラグとして設定する範囲が決定される
請求項１から請求項３のうちのいずれか１項に記載の脅威分析システム。
【請求項５】
フラグ化データの生成元のログと当該ログが脅威を示すか否かを表す情報とを対応付けた学習データを用いてモデルを学習する学習部を備え、
判別部は、前記モデルにフラグ化データを適用して当該フラグ化データの生成元のログが脅威を示すログか否かを判別する
請求項１から請求項４のうちのいずれか１項に記載の脅威分析システム。
【請求項６】
取得されたログから脅威を表す可能性のあるログを検知し、
ログが満たす条件に応じて設定されるフラグを規定したフラグ条件に基づいて、検知された前記ログをフラグ化したフラグ化データを生成し、
前記フラグを説明変数とし、脅威を示すか否かを目的変数とするモデルに前記フラグ化データを適用して、当該フラグ化データの生成元のログが脅威を示すログか否かを判別し、
前記ログが脅威を示すログか否かを示す判別結果を出力する
ことを特徴とする脅威分析方法。
【請求項７】
脅威を表す可能性のあるメールのログを検知し、
前記メールの送信元に所定の文字列が含まれるか否かを判断するフラグ条件に基づいてフラグ化データを生成する
請求項６記載の脅威分析方法。
【請求項８】
コンピュータに、
取得されたログから脅威を表す可能性のあるログを検知する脅威検知処理、
ログが満たす条件に応じて設定されるフラグを規定したフラグ条件に基づいて、検知された前記ログをフラグ化したフラグ化データを生成するフラグ化処理、
前記フラグを説明変数とし、脅威を示すか否かを目的変数とするモデルに前記フラグ化データを適用して、当該フラグ化データの生成元のログが脅威を示すログか否かを判別する判別処理、および、
前記ログが脅威を示すログか否かを示す判別結果を出力する出力処理
を実行させるための脅威分析プログラム。
【請求項９】
脅威検知処理で、脅威を表す可能性のあるメールのログを検知させ、
フラグ化処理で、前記メールの送信元に所定の文字列が含まれるか否かを判断するフラグ条件に基づいてフラグ化データを生成させる
請求項８記載の脅威分析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、収集されるログから脅威を分析する脅威分析システム、脅威分析方法および脅威解析プログラムに関する。
【背景技術】
【０００２】
昨今のサイバー攻撃の拡大により、ＳＯＣ（Security Operation Center ）／ＣＳＩＲＴ（Computer Security Incident Response Team）へのニーズが拡大している。具体的には、ＳＯＣ／ＣＳＩＲＴは、ＳＩＥＭ（Security Information and Event Management ）分析業務において、高度な知見に基づき、脅威の分析および対策を行う。【０００３】
また、脅威を検知する様々な方法も各種提案されている。例えば、特許文献１には、攻撃検知システムとログ分析システムとを連携させて効率的に攻撃分析を行う攻撃分析システムが記載されている。特許文献１に記載されたシステムは、検知ルールに基づいて、収集されたログからリアルタイムの相関分析を実行する。検知ルールに該当する攻撃を検知すると、特許文献１に記載されたシステムは、次に起こると予測される攻撃を、データベースから検索し、その攻撃が発生すると予測される時期を算出し、予測される時期のログをスケジュール検索する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１４／１１２１８５号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一方、特許文献１に記載されたような検知ルールだけでは、全ての脅威を検知することは一般的に困難である。そこで、脅威を検知する精度を向上させるため、このように検知された情報であっても、通常、人手による確認が行われる。しかし、一般に、確認対象のログは大量であり、また、ログには多種多様な形式が存在する。そのため、脅威の可能性のあるログをそのまま調査しようとした場合、検知漏れの可能性が高まってしまい、また、精度が属人的になってしまうという問題がある。さらに、脅威を検知するためには高度な知見も必要であるため、セキュリティ監視者も不足し、運用の負担が増加してしまうという問題もある。【０００６】
そこで、本発明は、セキュリティ監視者の運用負担を軽減しつつ、脅威を検知する精度を向上できる脅威分析システム、脅威分析方法および脅威分析プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明による脅威分析システムは、取得されたログから脅威を表す可能性のあるログを検知する脅威検知部と、ログが満たす条件に応じて設定されるフラグを規定したフラグ条件に基づいて、検知されたログをフラグ化したフラグ化データを生成するフラグ化処理部と、フラグを説明変数とし、脅威を示すか否かを目的変数とするモデルにフラグ化データを適用して、そのフラグ化データの生成元のログが脅威を示すログか否かを判別する判別部と、そのログが脅威を示すログか否かを示す判別結果を出力する出力部とを備えたことを特徴とする。【０００８】
本発明による脅威分析方法は、取得されたログから脅威を表す可能性のあるログを検知し、ログが満たす条件に応じて設定されるフラグを規定したフラグ条件に基づいて、検知されたログをフラグ化したフラグ化データを生成し、フラグを説明変数とし、脅威を示すか否かを目的変数とするモデルにフラグ化データを適用して、そのフラグ化データの生成元のログが脅威を示すログか否かを判別し、そのログが脅威を示すログか否かを示す判別結果を出力することを特徴とする。【０００９】
本発明による脅威分析プログラムは、コンピュータに、取得されたログから脅威を表す可能性のあるログを検知する脅威検知処理、ログが満たす条件に応じて設定されるフラグを規定したフラグ条件に基づいて、検知されたログをフラグ化したフラグ化データを生成するフラグ化処理、フラグを説明変数とし、脅威を示すか否かを目的変数とするモデルにフラグ化データを適用して、そのフラグ化データの生成元のログが脅威を示すログか否かを判別する判別処理、および、そのログが脅威を示すログか否かを示す判別結果を出力する出力処理を実行させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、セキュリティ監視者の運用負担を軽減しつつ、脅威を検知する精度を向上できる。
【図面の簡単な説明】
【００１１】
【図１】本発明による脅威分析システムの一実施形態の構成例を示すブロック図である。
【図２】ログの例を示す説明図である。
【図３】フラグ条件の例を示す説明図である。
【図４】フラグ化データを生成する処理の例を示す説明図である。
【図５】脅威分析システムの動作例を示すフローチャートである。
【図６】本発明による脅威分析システムの概要を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態を図面を参照して説明する。
【００１３】
図１は、本発明による脅威分析システムの一実施形態の構成例を示すブロック図である。本実施形態の脅威分析システム１００は、脅威検知部１０と、ログ記憶部１２と、フラグ条件記憶部１４と、フラグ化処理部１６と、フラグ化データ記憶部１８と、学習部２０と、モデル記憶部２２と、判別部２４と、出力部２６とを備えている。
【００１４】
脅威検知部１０は、各種センサやサーバなどの機器で取得されたログのうち、予め定められた条件に基づいて、脅威を表す可能性のあるログを検知する。本実施形態においてログの態様は任意である。ログの例として、メールログやＷｅｂへのアクセルログなどが挙げられる。
【００１５】
以下の説明では、具体例として、メールログを挙げて説明する。メールログには、例えば、ログを識別可能なログＩＤ、送信日時、メールの件名、送信者、受信者、添付ファイル名、添付ファイルサイズが含まれる。これらの内容は、例えば、ログにおける特定の項目（フィールド）に含まれる文字と言うこともできる。例えば、「メールの件名」は、メールログにおいて「件名」フィールドに含まれる文字列と言うこともでき、「送信者」は、メールログにおいて「送信者」フィールに含まれるメールアドレスを意味する文字列と言うこともできる。
【００１６】
また、脅威検知部１０が脅威を表す可能性のあるログを検知する方法も任意であり、一般的に知られた方法が用いられる。このようなログを検知する方法として、メールフィルタやプロキシサーバによる検知、所定のパケット監視や、サンドボックスによる検知、などが挙げられる。また、脅威検知部１０は、メール受信時に脅威を検知するメールサーバや、認証時の脅威を検知するアクティブディレクトリ（登録商標）サーバで実現されていてもよい。脅威検知部１０は、検知したログをログ記憶部１２に登録する。
【００１７】
このように、脅威分析システム１００が脅威検知部１０を備えることで、大量のログの中から脅威を表す可能性のログに絞り込むことができるため、セキュリティ監視者の運用負担を軽減できる。
【００１８】
ログ記憶部１２は、ログを表す情報を記憶する。ログ記憶部１２は、例えば、脅威検知部１０が検知した脅威を表す可能性のあるログを記憶する。他にも、ログ記憶部１２は、脅威を表すログか否かを識別する情報（「脅威フラグ」と記すこともある。）をそのログと対応付けて記憶していてもよい。
【００１９】
図２は、ログ記憶部１２が記憶するログの例を示す説明図である。図２に例示するログはメールデータであり、各メールデータを識別するログＩＤとともにメールを受信した日時、メール件名、送信者、受信者が対応付けられていることを示す。また、図２に例示するように、ログには、そのログに含まれる添付ファイル（添付ファイル名）や、添付ファイルのファイルサイズが対応付けられていてもよい。
【００２０】
また、図２では、メールデータがテーブル形式で各フィールドに記憶されている場合を例示したが、ログが記憶される形式はテーブル形式に限定されない。後述するフラグ化処理部１６がログの内容を識別できる形式であれば、ログは、例えば、平文のテキストデータなどであってもよい。
【００２１】
フラグ条件記憶部１４は、ログのフラグ化（１または０）に用いられる条件（以下、フラグ条件と記す。）を記憶する。具体的には、フラグ条件は、ログが満たす条件に応じて設定されるフラグを規定した条件であり、設定するフラグの種類に応じてそれぞれ定められる。
【００２２】
図３は、フラグ条件記憶部１４が記憶する条件の例を示す説明図である。図３に示す例では、項目が満たす条件ごとに異なるフラグを定義していることを示す。例えば、フラグ名＝“flag_title_01-01-01 ”で表されるフラグは、項目＝“件名”の文字列に、条件で示される“会”と言う文字が含まれるか否かでフラグ化されることを意味する。また、例えば、フラグ名＝“flag_sender_01-01 ”で表されるフラグは、項目＝“送信者”の文字列に、条件で示される“xxx.xxx.com ”と言う文字が含まれるか否かでフラグ化されることを意味する。
【００２３】
また、他にも、図３に例示するように、アーカイブ内に、“ .exe ”（拡張子exe の前にスペース）というファイル名のファイルが含まれているか否かでフラグ化する条件が定義されていてもよく、ファイルのサイズでフラグ化する条件が定義されていてもよい。
【００２４】
フラグ条件は、管理者等により予め定められる。なお、フラグ化する条件は、対象とするログが脅威を含んでいるか否かを効率的に学習や判別できる条件であることが好ましい。そこで、過去に脅威を含んでいると判断されたログに含まれる文字列やファイルサイズ、アーカイブファイル名などをフラグ化する条件として利用してもよい。
【００２５】
例えば、フラグ条件は、過去に脅威を示すと判断されたログに含まれる文字列のうち、予め定めた頻度を超える文字列を含むか否か判断する条件であってもよい。頻度が多い文字列を含むログは、脅威を示す可能性が高いと考えられるからである。また、例えば、フラグ条件は、判別する対象のログのサイズの分布に応じて、フラグとして設定する範囲が決定されてもよい。分布に応じてフラグ条件を設定することで、偏ったフラグ化がされることを抑制できる。
【００２６】
フラグ化処理部１６は、フラグ条件記憶部１４に記憶されたフラグ条件に基づいて、ログ記憶部１２に記憶されたログをフラグ化したデータ（以下、フラグ化データと記す。）を生成する。換言すると 、フラグ化処理部１６は、フラグ条件記憶部１４に記憶されたフラグ条件に基づいて、ログ記憶部１２に記憶されたログに含まれる特定の文字列を、その特定の文字列に対応する情報（値、具体例として０または１）に変更したフラグ化データを生成する。以下の説明では、フラグ化処理部１６が、フラグ化データとして、ログに特定の文字列が含まれる場合に、対応する情報“１”を生成し、ログに特定の文字列が含まれない場合に、対応する情報“０”を生成する場合について説明する。ただし、条件を満たすか否かが識別可能な情報であれば、フラグ化データの内容は０または１に限定されない。フラグ化処理部１６は、生成したフラグ化データをフラグ化データ記憶部１８に登録する。
【００２７】
図４は、フラグ化データを生成する処理の例を示す説明図である。図４に示す例では、Flag1 〜Flag7 は、「メール件名に特定のキーワードが含まれるか否か」を示すフラグ条件に応じて設定される値であり、Flag8 〜Flag12は、「送信者ドメインに特定のキーワードが含まれるか否か」を示すフラグ条件に応じて設定される値である。
【００２８】
さらに、図４に示す例では、Flag1 は、メール件名に「こんにちは」という文字列が含まれるか否かに応じて設定される値であり、Flag2 は、メール件名に「緊急」という文字列が含まれるか否かに応じて設定される値である。同様に、Flag1 は、メール件名に「こんにちは」という文字列が含まれるか否かに応じて設定される値であり、Flag8 は、送信者ドメイン（送信元）に“xxx.co.jp ”という文字列が含まれるか否かに応じて設定される値であり、Flag9 は、送信者ドメインに“yyy.com”という文字列が含まれるか否かに応じて設定される値である。また、例えば、送信者ドメインにフリーメールのドメインが設定されていてもよい。
【００２９】
例えば、図４に示す例において、ログＩＤ＝“０００００１”で識別されるログデータのメール件名は“○○の件”である。すなわち、メール件名に「こんにちは」の文字列も「緊急」の文字列も含まれていない。そこで、フラグ化処理部１６は、Flag1 およびFlag2 の値をそれぞれ“０”にフラグ化したデータを生成する。また、例えば、このログデータが別途定義されたFlag4 およびFlag7 の条件を満たす場合、フラグ化処理部１６は、Flag4 およびFlag7 の値をそれぞれ“１”にフラグ化したデータを生成する。送信ドメインについても同様である。このように、フラグ化処理部１６が文字列をフラグ化し、そのフラグ化された情報を用いるため、後述する学習部２０及び判別部２４は、文字列を用いるのに比べ、処理負荷が軽減できるだけでなく、より速やかに処理を実行することができる。
【００３０】
フラグ化データ記憶部１８は、フラグ化データを記憶する。なお、フラグ化処理部１６が生成したフラグ化データを後述する判別部２４が直接用いる場合、脅威分析システム１００は、フラグ化データ記憶部１８を備えていなくてもよい。
【００３１】
学習部２０は、上述するフラグを説明変数とし、脅威を示すか否かを目的変数とするモデルを学習する。具体的には、学習部２０は、フラグ化されたログとそのログが脅威を示すか否かを表す情報とを対応付けた学習データを用いて、上記モデルを学習する。脅威を示すか否かは、生成するモデルに応じて定められればよく、例えば、０（脅威なし）または１（脅威あり）で表されていてもよいし、脅威の度合いで表されていてもよい。学習データは、例えば、過去に脅威を示すか否かが判断されたログを、フラグ化処理部１６によってフラグ化することで作成されてもよい。学習部２０が学習したモデルを、以下、学習済モデルと記す。
【００３２】
モデル記憶部２２は、学習部２０が生成した学習済みモデルを記憶する。
【００３３】
判別部２４は、学習済モデルにフラグ化データを適用して、そのフラグ化データの生成元のログが脅威を示すログか否かを判別する。例えば、学習済モデルが、脅威か否かを０／１で判別するモデルの場合、判別部２４は、１（脅威あり）と判別されたフラグ化データの生成元ログを、脅威を示すログと判断してもよい。また、例えば、学習済モデルが、脅威か否かを度合いで算出するモデルの場合、判別部２４は、予め定めた閾値を超える度合いが算出されたフラグ化データの生成元ログを、脅威を示すログと判断してもよい。
なお、この閾値の設定方法は任意であり、例えば、過去に脅威ありと判別されたデータに基づいて設定してもよいし、学習済モデルの検証結果に応じて設定してもよい。
【００３４】
出力部２６は、判別対象としたログが脅威を示すログか否かを示す判別結果を出力する。
【００３５】
フラグ条件記憶部１４と、フラグ化処理部１６と、学習部２０と、判別部２４と、出力部２６とは、プログラム（脅威分析プログラム）に従って動作するコンピュータのＣＰＵによって実現される。また、脅威検知部１０も、プログラムに従って動作するコンピュータのＣＰＵによって実現されてもよい。例えば、プログラムは、脅威分析システム１００の記憶部（図示せず）に記憶され、ＣＰＵは、そのプログラムを読み込み、プログラムに従って、フラグ条件記憶部１４、フラグ化処理部１６、学習部２０、判別部２４および出力部２６として動作してもよい。
【００３６】
また、フラグ条件記憶部１４と、フラグ化処理部１６と、学習部２０と、と、出力部２６とは、それぞれが専用のハードウェアで実現されていてもよい。また、ログ記憶部１２と、フラグ化データ記憶部１８と、モデル記憶部２２とは、例えば、磁気ディスク等により実現される。
【００３７】
また、本実施形態では、脅威分析システム１００が学習部２０およびモデル記憶部２２を備えている場合について説明した。ただし、学習部２０およびモデル記憶部２２が、本願の脅威分析システム１００と独立した情報処理装置（図示せず）で実現されていてもよい。この場合、判別部２４は、上記情報処理装置が生成した学習済モデルを受信して、判別処理を行ってもよい。
【００３８】
次に、本実施形態の脅威分析システム１００の動作を説明する。図５は、本実施形態の脅威分析システム１００の動作例を示すフローチャートである。
【００３９】
脅威検知部１０は、取得されたログから脅威を表す可能性のあるログを検知し（ステップＳ１１）、ログ記憶部１２に記憶する。フラグ化処理部１６は、フラグ条件記憶部１４に記憶されたフラグ条件に基づいて、検知されたログをフラグ化したフラグ化データを生成する（ステップＳ１２）。判別部２４は、学習部２０によって生成された学習済みモデルにフラグ化データを適用して、そのフラグ化データの生成元のログが脅威を示すログか否かを判別する（ステップＳ１３）。そして、出力部２６は、判別結果を出力する（ステップＳ１４）。
【００４０】
以上のように、本実施形態では、脅威検知部１０が、取得されたログから脅威を表す可能性のあるログを検知し、フラグ化処理部１６がフラグ条件に基づいて、検知されたログからフラグ化データを生成する。そして、判別部２４が、上述するモデルにフラグ化データを適用して、そのフラグ化データの生成元のログが脅威を示すログか否かを判別し、出力部２６が判別結果を出力する。よって、セキュリティ監視者の運用負担を軽減しつつ、脅威を検知する精度を向上できる。
【００４１】
次に、本発明の概要を説明する。図６は、本発明による脅威分析システムの概要を示すブロック図である。本発明による脅威分析システム８０（例えば、脅威分析システム１００）は、取得されたログから脅威を表す可能性のあるログを検知する脅威検知部８１（例えば、脅威検知部１０）と、ログが満たす条件に応じて設定されるフラグを規定したフラグ条件に基づいて、検知されたログをフラグ化したフラグ化データを生成するフラグ化処理部８２（例えば、フラグ化処理部１６）と、フラグを説明変数とし、脅威を示すか否かを目的変数とするモデルにフラグ化データを適用して、そのフラグ化データの生成元のログが脅威を示すログか否かを判別する判別部８３（例えば、判別部２４）と、そのログが脅威を示すログか否かを示す判別結果を出力する出力部８４（例えば、出力部２６）とを備えたことを特徴とする。
【００４２】
そのような構成により、セキュリティ監視者の運用負担を軽減しつつ、脅威を検知する精度を向上できる。
【００４３】
具体的には、脅威検知部８１は、脅威を表す可能性のあるメールのログを検知し、フラグ化処理部８２は、メールの送信元（例えば、送信元ドメイン）に所定の文字列が含まれるか否かを判断するフラグ条件に基づいてフラグ化データを生成してもよい。
【００４４】
また、フラグ条件は、過去に脅威を示すと判断されたログに含まれる文字列のうち、予め定めた頻度を超える文字列を含むか否か判断する条件を含んでいてもよい。
【００４５】
また、フラグ条件として、判別する対象のログのサイズの分布に応じて、フラグとして設定する範囲が決定されてもよい。
【００４６】
また、脅威分析システム８０は、フラグ化データの生成元のログとそのログが脅威を示すか否かを表す情報とを対応付けた学習データを用いてモデルを学習する学習部（例えば、学習部２０）を備えていてもよい。そして、判別部８３は、モデルにフラグ化データを適用してそのフラグ化データの生成元のログが脅威を示すログか否かを判別してもよい。
【００４７】
以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【００４８】
この出願は、２０１８年３月１９日に出願された日本特許出願２０１８−０５０５０３を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【００４９】
１０  脅威検知部
１２  ログ記憶部
１４  フラグ条件記憶部
１６  フラグ化処理部
１８  フラグ化データ記憶部
２０  学習部
２２  モデル記憶部
２４  判別部
２６  出力部
【図１】
2019181005.tif 000003
【図２】
2019181005.tif 000004
【図３】
2019181005.tif 000005
【図４】
2019181005.tif 000006
【図５】
2019181005.tif 000007
【図６】
2019181005.tif 000008
【国際調査報告】
2019181005.tif 000009
2019181005.tif 000010
2019181005.tif 000011
2019181005.tif 000012