(57)【特許請求の範囲】
【請求項１】
入力されたログ毎に、攻撃者の行動に関する要素を抽出する要素抽出部と、
形式文法を用いて前記攻撃者の行動を定義した定義情報を基に、前記定義情報において定義された行動に該当する特徴を有するログ列をログから検出する構文解析器を生成する生成部と、
前記構文解析器を用いて、前記要素抽出部によって抽出された前記要素から成るログから、前記定義情報において定義された行動に該当する特徴を有するログ列を検出する構文解析部と、
前記構文解析部によって検出されたログ列を再構築し、再構築後の各ログ列に、前記定義情報において定義された行動を表すラベルを付加し、前記ラベルを付加したログ列を、攻撃者の一連の行動に該当するログとして出力する再構築部と、
を有することを特徴とする情報処理装置。
【請求項２】
前記定義情報は、要素を終端記号として扱った形式文法が用いられることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記定義情報は、前記攻撃者の行動の順序を示す情報を含み、
前記再構築部は、前記ラベルを付加したログ列を、定義情報が示す順序で配置し、該ログを、攻撃者の一連の行動に該当するログとして出力することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
入力されたログ毎に、攻撃者の行動に関する要素を抽出するステップと、
形式文法を用いて前記攻撃者の行動を定義した定義情報を基に、前記定義情報において定義された行動に該当する特徴を有するログ列をログから検出する構文解析器を生成するステップと、
前記構文解析器を用いて、前記要素するステップにおいて抽出された前記要素から成るログから、前記定義情報において定義された行動に該当する特徴を有するログ列を検出するステップと、
前記検出するステップにおいて検出されたログ列を再構築し、再構築後の各ログ列に、前記定義情報において定義された行動を表すラベルを付加し、前記ラベルを付加したログ列を、攻撃者の一連の行動に該当するログとして出力するステップと、
をコンピュータに実行させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
インシデント調査では、分析者が被害の発生した環境からログを収集・分析することによって、攻撃ベクトルの有無や情報漏えいの有無などの攻撃者の一連の行動を明確にする調査が必要となる。この調査は、膨大な時間を要する作業であることが知られており、調査効率化のための様々な研究が行われている。【０００３】
ここで、ログ間の明確な依存関係を表す情報を基にログを関連付ける方法（非特許文献１，２参照）の、インシデント調査への適用が提案されている。この方法においては、ログ間の明確な依存関係を表す情報として、例えば、プロセスＩＤと親プロセスＩＤなどを設定し、ログの関連付けを行う。【０００４】
また、他にも、ログ間の明確な依存関係を表す情報に限らず、ログ間に共通して現れる情報を基にログを関連付ける方法が提案されている（非特許文献３参照）。この方法においては、ログ間に共通して現れる情報として、２つのログに含まれる同一のファイル名を設定し、ログの関連付けを行う。【０００５】
また、他にも、OpenIOC  frameworkがある（非特許文献４，５参照）。この方法では、ファイル名やハッシュ値などの一致を確かめる項を論理和や論理積でつないだ条件式を用いて、攻撃の痕跡を定義することができる。そして、この方法では、定義したIndicator  of  Compromise（IOC）を用いて、調査環境に痕跡が残っているかどうかについても調べることもできる。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Samuel  T.  King  and  Peter  M.  Chen,  “Backtracking  Intrusions”,  ACM  Transactions  on  Computer  Systems,  Vol.  23,  No.  1,  February  2005,  Pages  51−76.
【非特許文献２】Yushan  Liu  et  al,  “Towards  a  Timely  Causality  Analysis  for  Enterprise  Security”,  NDSS,  2018.
【非特許文献３】Kexin  Pei  et  al,  “HERCULE:Attack  Story  Reconstruction  via  Community  Discovery  on  Correlated  Log  Graph”,  ACSAC,  2016.
【非特許文献４】Free  Security  Software、［online］、［平成３０年９月２８日検索］、インターネット＜ＵＲＬ：https://www.fireeye.com/services/freeware.html＞
【非特許文献５】IIJ−SECT、［online］、［平成３０年９月２８日検索］、インターネット＜ＵＲＬ：https://sect.iij.ad.jp/d/2012/02/278431.html＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、非特許文献１〜３に記載の方法では、攻撃者の一連の行動を見つけることのみに注力しており、見つけた攻撃者の一連の行動をその後の調査の効率化には活用していなかった。【０００８】
また、非特許文献４，５に記載の方法では、攻撃者の一連の行動を記述するだけの表現力がないという問題がある。非特許文献４，５に記載の方法では、論理和或いは論理積を使って条件式化するもので、項同士の順序性や繰り返しなどを表現することができない。【０００９】
例えば、以下の行動について考える。
項１：外部からファイルｘをダウンロードした。
項２：ファイルｘを実行した。
項３：外部通信が発生した。
項４：リモートログインの通信が発生した。
項５：リモートログインに失敗した。【００１０】
このとき、これらの項１から５までがその順で出現した場合は、非特許文献４，５に記載の方法によれば、既知の攻撃のパターンと類似しているため攻撃の疑いがあることを判定できる。しかしながら、非特許文献４，５に記載の方法によれば、順番を無視し各項の有無だけで考えた場合、各項に対応する行動自体は攻撃でなくとも、頻繁に発生しうることなので攻撃の疑いを持つことはできない。【００１１】
本発明は、上記に鑑みてなされたものであって、ログから攻撃者の一連の行動を形式化し、再構築することができる情報処理装置及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述した課題を解決し、目的を達成するために、本発明に係る情報処理装置は、入力されたログ毎に、攻撃者の行動に関する要素を抽出する要素抽出部と、形式文法を用いて攻撃者の行動を定義した定義情報を基に、定義情報において定義された行動に該当する特徴を有するログ列をログから検出する構文解析器を生成する生成部と、構文解析器を用いて、要素抽出部によって抽出された要素から成るログから、定義情報において定義された行動に該当する特徴を有するログ列を検出する構文解析部と、構文解析部によって検出されたログ列を再構築し、再構築後の各ログ列に、定義情報において定義された行動を表すラベルを付加し、ラベルを付加したログ列を、攻撃者の一連の行動に該当するログとして出力する再構築部と、を有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ログから攻撃者の一連の行動を形式化し、再構築することができる。
【図面の簡単な説明】
【００１４】
【図１】図１は、実施の形態における情報処理システムの構成の一例を模式的に示す図である。
【図２】図２は、情報処理装置の構成を示すブロック図である。
【図３】図３は、要素抽出部における要素抽出の例を示す図である。
【図４】図４は、行動を形式文法で定義したファイルの一例を示す図である。
【図５】図５は、一般的な形式文法で行動の構文を定義した例を示す図である。
【図６】図６は、実施の形態における形式文法で行動の構文を定義した例を示す図である。
【図７】図７は、構文解析部による処理を説明する図である。
【図８−１】図８−１は、再構築部のラベル付加の処理を説明する図である。
【図８−２】図８−２は、再構築部のラベル付加の処理を説明する図である。
【図９】図９は、情報処理装置における処理の流れを示す図である。
【図１０】図１０は、実施の形態に係る情報処理方法の処理手順を示すフローチャートである。
【図１１】図１１は、行動を形式文法で定義したファイルの一例を示す図である。
【図１２】図１２は、定義を満たすログ列を含むログデータの一例を示す図である。
【図１３】図１３は、情報処理装置が出力するログの一例を示す図である。
【図１４】図１４は、プログラムが実行されることにより情報処理装置が実現されるコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【００１６】
［実施の形態］
本発明の実施の形態について説明する。本発明の実施の形態では、取得したログを基に、攻撃者の一連の行動を、形式化し、再構築を行う情報処理装置及び情報処理プログラムについて説明する。本実施の形態として、攻撃者の一連の行動を定義する多くのモデル（Cyber  Kill  ChainやAttack  Life  Cycleなど）が存在することから、攻撃自体は異なるものでも、行動が同じであれば形式化可能なパターンが存在するという観点に注目し、攻撃者の一連の行動の形式化と、形式化に従いログからの攻撃者の一連の行動の再構築を実現する技術を説明する。まず、実施の形態における情報システムの一例を説明する。
【００１７】
［情報システムの構成］
図１は、実施の形態における情報処理システムの構成の一例を模式的に示す図である。図１に示す情報処理システムは、例えば、ログ保持装置１００と、情報処理装置１０とが、インターネットや専用線等のネットワークＮを介して接続する構成を有する。
【００１８】
ログ保持装置１００は、分析者による調査対象のログを保持する。ログ保持装置１００は、ネットワークＮを介して、情報処理装置１０に、調査対象のログを提供する。なお、調査対象のログは、ログ保持装置１００ではなく、情報処理装置１０が装置内に調査対象のログを保持していてもよい。
【００１９】
情報処理装置１０は、取得したログを基に、攻撃者の一連の行動を、形式化し、再構築を行い、攻撃者の一連の行動に該当するログとして出力する。情報処理装置１０は、以下の手順を用いる。
【００２０】
具体的には、情報処理装置１０は、手順として、形式文法を用いて、攻撃者の行動を記録したログに現れる特徴的な要素及び行動間の関係性を定義し、定義を満たすようなログを抽出する。形式文法とは、非終端記号とその記号が受理するパターンをあらわす表現からなる文法であり、A  =  e  のような形で記述される。ここで、Aは非終端記号であり、eはAが受理するパターンを表す表現である。ここで、本実施の形態において用いる形式文法は、ログから得られた要素を終端記号として扱うように変更を加えたものである。また、以降の例では、形式文法として、PEGwUC（Parsing  expression  grammar  with  Unordered  choices）を用いるが、これに限定するものではない。すなわち、その他の形式文法でも同様の変更を加えた上で置き換え可能である。
【００２１】
情報処理装置１０は、この手順により、ログが、明確な依存関係や共通の情報を持たない場合でも関連付けることができる。また、情報処理装置１０は、ログがどのような行動により記録されたものであるのかを定義できるようになる。
【００２２】
［情報処理装置］
次に、情報処理装置１０の構成について説明する。図２は、図１に示す情報処理装置１０の構成を示すブロック図である。図２に示すように、情報処理装置１０は、通信部１１、入力部１２、出力部１３、記憶部１４及び制御部１５を有する。
【００２３】
通信部１１は、ネットワーク等を介して接続された他の装置との間で、各種情報を送受信する通信インタフェースである。通信部１１は、ＮＩＣ（Network  Interface  Card）等で実現され、ＬＡＮ（Local  Area  Network）やインターネットなどの電気通信回線を介した他の装置と制御部１５との間の通信を行う。例えば、通信部１１は、ネットワークＮなどを介して入力された調査対象のログを、制御部１５に入力する。また、通信部１１は、行動を形式文法で定義したファイルの入力を受け付け、制御部１５に入力する。通信部１１は、再構築された攻撃者の一連の行動に該当するログを、ネットワークＮ等を介して、他の装置に送信してもよい。
【００２４】
入力部１２は、情報処理装置１０の操作者からの各種操作を受け付ける入力インタフェースである。例えば、入力部１２は、タッチパネル、音声入力デバイス、キーボードやマウス等の入力デバイスによって構成される。
【００２５】
出力部１３は、例えば、液晶ディスプレイなどの表示装置、プリンター等の印刷装置、情報通信装置等によって実現される。出力部１３は、再構築された攻撃者の一連の行動を示すログを操作者（例えば、分析者）に対して出力する。
【００２６】
記憶部１４は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現され、情報処理装置１０を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが記憶される。
【００２７】
制御部１５は、各種の処理手順などを規定したプログラム及び所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する。例えば、制御部１５は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路である。制御部１５は、要素抽出部１５１、生成部１５２、構文解析部１５３、再構築部１５４を有する。
【００２８】
要素抽出部１５１は、入力されたログ毎に、攻撃者の行動に関する要素を抽出する。要素抽出部１５１は、調査対象のログを受け付け、記録されているログ毎に要素を抽出する。要素は、攻撃者の一連の行動を記録したログに現れる特徴的なものである。要素抽出部１５１は、抽出した要素のみから成るログを構文解析部１５３に出力する。
【００２９】
要素抽出部１５１は、調査対象のログを受け付け、記録されているログごとに要素を抽出する。抽出対象の要素は、例えば、記録時刻、プロセスＩＤ、親プロセスＩＤ、ユーザＩＤ、コマンドライン、送信先アドレス、送信先ポート、ファイル名、ＤＮＳ（Domain  Name  System）ドメイン名、名前解決により得られたＩＰアドレス、プロセス名、ＧＥＴリクエストの絶対パス、ＰＯＳＴリクエストの絶対パス等である。要素は、攻撃者の一連の行動を記録したログに現れる特徴的なものであればよく、上記のものに限定する必要ない。また、情報処理装置１０では、要素の追加や削除を適宜行うことも可能である。
【００３０】
図３は、要素抽出部１５１における要素抽出の例を示す図である。要素抽出部１５１は、図３の（１）のログのうち、領域Ｗ１の記載内容から、記録時刻「2018-07-11T10:28:06.078110000Z」を抽出する（図３の（２）参照）。そして、要素抽出部１５１は、図３の（１）のログのうち、領域Ｗ２の記載内容から、送信先アドレス「192.168.56.101」、送信元アドレス「10.0.2.15」、送信先ポート「8080」、送信元ポート「49636」を抽出する（図３の（２）参照）。要素抽出部１５１は、抽出した要素から成るログを構文解析部１５３に出力する。
【００３１】
生成部１５２は、形式文法を用いて攻撃者の行動を定義した定義情報を基に、定義情報において定義された行動に該当する特徴を有するログ列をログから検出する構文解析器を生成する。定義情報とは、行動を記録したログに現れる特徴的な要素を、形式文法を用いて定義したものであり、ファイル形式で入力される。定義情報には、要素を終端記号として扱った形式文法が用いられる。定義情報は、非終端記号についても定義する。また、定義情報は、攻撃者の行動の順序を示す情報を含む。構文解析器は、定義情報において定義された行動に該当する特徴を有するログ列をログから検出する機能を有する。生成部１５２は、生成した構文解析器を、構文解析部１５３に出力する。
【００３２】
生成部１５２は、攻撃者の行動を形式文法で定義したファイルを定義情報として受け取る。図４は、行動を形式文法で定義したファイルの一例を示す図である。図４に示すファイルは、形式文法として、PEGwUCを用いている。
【００３３】
ここで、一般的な形式文法では、文字を終端記号として扱うが、生成部１５２では、ログから得られた要素を終端記号として扱う。例えば、一般的な形式文法として、正規文法、文脈自由文法、解析表現文法、Boolean  Grammar等がある。
【００３４】
そして、本実施の形態において、形式文法中において終端記号を記述する際には、［（要素名1）（演算子1）（要素値1）,（要素名2）（演算子2）（要素値2)）,・・・］とした表記を用いる。例えば、終端記号として、［fname=“dummy.txt”］、［opcode=“FileCreate”,dport>50,dport<=80］のように、記述される。本実施の形態では、終端記号を扱う際に論理式を用いている。なお、終端記号以外の記述方法は、一般的な形式文法と同様である。
【００３５】
次に、記述例を具体的に示す。図５は、一般的な形式文法で四則演算の構文を定義した例を示す図である。図６は、実施の形態における形式文法で行動の構文を定義した例を示す図である。図５に示すように、例えば、PEGwUCで四則演算の構文を定義した場合には、「‘」及び「’」で囲まれる文字が一般的なPEGwUCにおける終端記号である。これに対し、図６に示すように、本実施の形態では、「［」及び「］」で囲まれる要素の列が、PEGwUCの終端記号である。このように、生成部１５２は、要素を終端記号として扱った形式文法を用いる。
【００３６】
生成部１５２は、このような攻撃者の行動を形式文法で定義したファイルを用いて、攻撃者の行動に該当する特徴を有するログ列をログから検出するための構文解析器を生成する。
【００３７】
構文解析部１５３は、要素抽出部１５１によって抽出された要素のみから成るログと、生成部１５２が生成した構文解析器とを基に、構文解析を行う。構文解析部１５３は、構文解析器を用いて、要素抽出部１５１によって抽出された要素から成るログから、定義情報において定義された行動に該当する特徴を有するログ列を検出する。また、構文解析部１５３は、検出したログ列を再構築可能とする処理を行う。構文解析部１５３は、解析結果を再構築部１５４に出力する。
【００３８】
構文解析部１５３は、構文解析器を用いて、要素を抽出するステップにおいて抽出された前記要素から成るログから、定義情報において定義された行動に該当する特徴を有するログ列を検出する構文解析を行う。この際、構文解析部１５３は、検出したログ列から攻撃者の一連の行動を再構築可能とする処理を行う。
【００３９】
図７は、構文解析部１５３による処理を説明する図である。例えば、図７のログ１は、図３の（２）に示す、要素抽出部１５１が抽出した要素を含む。ここで、図７に示すように、構文解析部１５３は、構文解析器を用いて検出したログ列を、後段の処理において再構築できるように、解析木の生成や、受理した部分列の情報の記録を実行する。
【００４０】
再構築部１５４は、構文解析部１５３によって検出されたログ列に、定義情報において定義された行動を表すラベルを付加し、このラベルを付加したログ列を、攻撃者の一連の行動に該当するログとして出力する。
【００４１】
再構築部１５４は、構文解析の結果から、受理されたログ列を再構築する。再構築部１５４は、解析木、或いは、記録された部分列の情報を基に、ログ列を再構築する。そして、再構築部１５４は、再構築したログ列のうち、構文解析部１５３が検出したログ列に、攻撃者の行動を表すラベルを付加する。ラベルは、定義情報で定義された行動の種別を表す。行動の種別として、サイバーキルチェーンにおけるDelivery,  Exploitation,  InstallationやCommand  and  Controlなどのフェーズがある。
【００４２】
図８−１及び図８−２は、再構築部１５４のラベル付加の処理を説明する図である。図８―１は、定義情報である形式文法ファイルＰ１を示す。図８―２は、ログへの、形式文法ファイルＰ１に定義された行動の種別に基づくラベル付与の一例を示す。なお、再構築したログ列のうち、定義情報に含まれる非終端記号に合致した部分列が含まれるログ列は、その非終端記号に対応する攻撃者の行動によるものであるとする。
【００４３】
図８―２に示すように、再構築部１５４は、再構築により、例えば、ログ４〜５３を有するログの部分列Ｗ１１´が得られたとする。この部分列Ｗ１１´のうち、形式文法ファイルＰ１に基づいて、行動「Delivery」（図８―１の枠Ｗ１２参照）により記録されたログ５，６（図８―２の枠Ｗ１２´参照）にラベル「Delivery」を付加する。そして、再構築部１５４は、部分列Ｗ１１´のうち、行動「Objective」（図８―１の枠Ｗ１３参照）により記録されたログ５３（図８―２の枠Ｗ１３´参照）にラベル「Objective」を付加する。
【００４４】
なお、再構築部１５４は、ログ列を復元する際に、形式文法ファイルＰ１に示す選択を表す記号「｜」により曖昧性を含む箇所を検出した場合は、選択「｜」の先頭の要素から優先的に選択するものとする。これまで説明した処理によって、調査対象のログの列のうち、攻撃者の一連の行動に該当する箇所のうち、特徴的な箇所を検出することができる。
【００４５】
そして、再構築部１５４は、形式文法ファイルＰ１で定義された行動の順序にしたがって、ラベル「Delivery」のログ５，６の次に、ラベル「Objective」のログ５３を配置する。再構築部１５４は、このように、攻撃者の行動順にしたがって配置したログを、攻撃者の一連の行動を形式化して表現したログとして出力する。
【００４６】
このように、再構築部１５４は、要素抽出部１５１から入力された要素から成るログを用いて、構文解析部１５３によって検出されたログ列を再構築する。そして、再構築部１５４は、再構築後のログ列にラベルを付加する。再構築部１５４は、この再構築してラベルを付加したログ列を、定義情報が示す順序で配置し、このログを、攻撃者の一連の行動を形式化して表現したログとして出力する。
【００４７】
［処理の流れ］
図９は、情報処理装置１０における処理の流れを示す図である。図９に示すように、要素抽出部１５１は、調査対象のログの入力を受けると（図９の矢印Ｙ１参照）、入力されたログ毎に抽出要素を抽出して、抽出要素のみから成るログを構文解析部１５３に出力する（図９の矢印Ｙ３参照）。
【００４８】
一方、生成部１５２は、攻撃者の行動を定義したファイル（定義情報）を受けると（図９の矢印Ｙ２参照）、構文解析器を生成し、生成した構文解析器を構文解析部１５３に出力する（図９の矢印Ｙ４参照）。
【００４９】
構文解析部１５３は、構文解析器を用いて、要素から成るログから、定義された行動に該当する特徴を有するログ列を検出する構文解析を行い、解析結果を再構築部１５４に出力する（図９の矢印Ｙ５参照）。この際、構文解析部１５３は、抽出要素のみから成るログも、再構築部１５４に出力する（図９の矢印Ｙ６参照）。
【００５０】
再構築部１５４は、構文解析部１５３によって検出されたログ列を再構築した後に、ログ列にラベルを付加する。そして、再構築部１５４は、ラベルを付加したログ列を、定義情報が示す順序で配置したログを、攻撃者の一連の行動に該当するログとして出力する（図９の矢印Ｙ７）。
【００５１】
このように、情報処理装置１０は、入力されたログから、攻撃者の一連の行動を形式化し、再構築することができる。このため、情報処理装置１０からの出力を利用すれば、分析者自らが、多数のログを調査・分析して攻撃者の一連の行動を明らかにするという処理を行う必要がない。したがって、情報処理装置１０によれば、従来よりも、インシデント調査に対する分析者の処理負担を軽減することができる。
【００５２】
［情報処理方法の処理手順］
次に、情報処理装置１０による情報処理方法の処理手順について説明する。図１０は、実施の形態に係る情報処理方法の処理手順を示すフローチャートである。
【００５３】
図１０に示すように、要素抽出部１５１は、入力されたログ毎に、処理に必要な要素のみを抽出して（ステップＳ１）、抽出した要素のみから成るログを構文解析部１５３に出力する。
【００５４】
一方、生成部１５２は、攻撃者の行動を定義したファイルに記載された行動の定義に従い構文解析器を生成し（ステップＳ２）、生成した構文解析器を構文解析部１５３に出力する。
【００５５】
構文解析部１５３は、構文解析器を用いて、抽出された要素のみから成るログに、定義された行動に一致するログ列が存在するか否かを判定する（ステップＳ３）。構文解析部１５３が、抽出された要素のみから成るログに、定義された行動に一致するログ列が存在しないと判定した場合（ステップＳ３：Ｎｏ）、情報処理装置１０は、処理を終了する。
【００５６】
一方、構文解析部１５３が、抽出された要素のみから成るログに、定義された行動に一致するログ列が存在すると判定した場合（ステップＳ３：Ｙｅｓ）、再構築部１５４は、解析結果から、定義に一致したログ列を再構築し、ログ列にラベルを付加する（ステップＳ４）。そして、再構築部１５４は、ラベルを付加したログ列を、定義情報が示す順序で配置したログを、攻撃者の一連の行動に該当するログとして出力する。分析者は、攻撃者の一連の行動に該当するログを分析することによって、インシデント調査を実行する。
【００５７】
［実施の形態の効果］
このように、情報処理装置１０は、取得したログを基に、攻撃者の一連の行動を、形式化し、再構築を行うことによって、攻撃者の一連の行動に該当するログを出力することができる。このログを使用することによって、分析者は、多数のログを調査・分析して攻撃者の一連の行動を明らかにする処理を行わずとも、攻撃者の一連の行動を、出力されたログから検出できるようになる。したがって、情報処理装置１０によれば、従来よりも、インシデント調査に対する分析者の処理負担を軽減することができる。
【００５８】
また、攻撃者の一連の行動は形式文法として定義されるため、本実施の形態では、一度定義すれば、定義の共有や組み合わせ等が可能であり、柔軟に、攻撃者の一連の行動は形式文法として定義できる。このため、分析者としての経験が浅い人であっても、本情報処理装置１０を用いることによって、攻撃者の一連の行動の適切な検出及び調査が可能となる。したがって、本実施の形態によれば、分析者による分析結果を一定水準まで高めることができる。
【００５９】
［実施例］
本実施の形態の実施例を示す。情報処理装置１０では、行動を記録したログに現れる特徴的な要素を、形式文法を用いて定義した後に、定義を満たすログ列を、調査対象のログから検出し、検出したログ列に、行動と対応するラベルを付加する。そして、情報処理装置１０は、ラベルを付加したログ列を、定義情報が示す順序で配置し、該ログを、攻撃者の一連の行動に該当するログとして出力する。
【００６０】
まず、攻撃者の行動を形式文法で定義したファイルについて具体的に説明する。図１１は、行動を形式文法で定義したファイルの一例を示す図である。また、図１２は、定義を満たすログ列を含むログデータの一例を示す図である。この例では、ログＲ２０は、ＸＭＬで記述されており、Eventタグ（<Event>…</Event>）が１つのログに対応し、Eventタグの列がログ全体を表す。情報処理装置１０では、再構築部１５４が、図１１のファイルＴ１に定義された行動に該当するログ列に、その行動を表すラベルを付加する。例えば、再構築部１５４は、検出されたログ列Ｗ２１のうちの４，５行目のログ列Ｒ２１に対して、ラベル「Delivery」を付し、８，９行目のログ列Ｒ２２に対して、ラベル「Installation」を付加する（図１２参照）。
【００６１】
図１３は、情報処理装置１０が出力するログの一例を示す図である。再構築部１５４は、形式文法ファイルＴ１（図１１参照）が示す行動の順序にしたがって、ラベル「Delivery」のログＲ２１の次に、ラベル「Installation」のログＲ２２を配置する。情報処理装置１０は、このように、攻撃者の行動順にしたがって配置したログを、攻撃者の一連の行動を形式化して表現したログとして出力する。
【００６２】
［システム構成等］
図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、ＣＰＵ及び当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００６３】
また、本実施の形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的におこなうこともでき、あるいは、手動的に行なわれるものとして説明した処理の全部又は一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００６４】
［プログラム］
図１４は、プログラムが実行されることにより、情報処理装置１０が実現されるコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【００６５】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【００６６】
ハードディスクドライブ１０９０は、例えば、ＯＳ（Operating  System）１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、情報処理装置１０の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、情報処理装置１０における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤ（Solid  State  Drive）により代替されてもよい。
【００６７】
また、上述した実施の形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して実行する。
【００６８】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３及びプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３及びプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【００６９】
以上、本発明者によってなされた発明を適用した実施の形態について説明したが、本実施の形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施の形態に基づいて当業者等によりなされる他の実施の形態、実施例及び運用技術等は全て本発明の範疇に含まれる。
【符号の説明】
【００７０】
１０  情報処理装置
１１  通信部
１２  入力部
１３  出力部
１４  記憶部
１５  制御部
１５１  要素抽出部
１５２  生成部
１５３  構文解析部
１５４  再構築部
【図１】
0006984761.tif 000002
【図２】
0006984761.tif 000003
【図３】
0006984761.tif 000004
【図４】
0006984761.tif 000005
【図５】
0006984761.tif 000006
【図６】
0006984761.tif 000007
【図７】
0006984761.tif 000008
【図８−１】
0006984761.tif 000009
【図８−２】
0006984761.tif 000010
【図９】
0006984761.tif 000011
【図１０】
0006984761.tif 000012
【図１１】
0006984761.tif 000013
【図１２】
0006984761.tif 000014
【図１３】
0006984761.tif 000015
【図１４】
0006984761.tif 000016