(57)【特許請求の範囲】
【請求項１】
正常なログの入力を受け付ける入力部と、
前記ログから、あらかじめ設定された抽出条件に合致する部分を抽出する抽出部と、
前記抽出部によって抽出された部分を、前記抽出条件に対応する正規表現に変換する変換部と、
前記変換部によって前記抽出された部分が変換された前記ログを、正常なログをフィルタリングするためのルールの集合であるホワイトリストを用いてログを監視するログ監視装置に出力する出力部と、
を有することを特徴とするホワイトリスト作成装置。
【請求項２】
前記抽出部は、１０進数または１６進数であるという抽出条件に合致する部分を抽出し、
前記変換部は、前記抽出部によって抽出された部分を、数値または１６進数において数値として用いられる文字列を表す正規表現に変換することを特徴とする請求項１に記載のホワイトリスト作成装置。
【請求項３】
前記抽出部は、空白が連続するという抽出条件に合致する部分を抽出し、
前記変換部は、前記抽出部によって抽出された部分を、１つ以上の空白を表す正規表現に変換することを特徴とする請求項１または２に記載のホワイトリスト作成装置。
【請求項４】
前記ログから、ログの文頭の日時およびホスト名を表す部分を削除する削除部をさらに有し、
前記出力部は、前記削除部によって前記ログの文頭の日時およびホスト名を表す部分が削除された前記ログを前記ログ監視装置に出力することを特徴とする請求項１から３のいずれか１項に記載のホワイトリスト作成装置。
【請求項５】
前記入力部は、前記ログ監視装置によって正常なログと判定されたログの入力をさらに受け付け、
前記抽出部は、前記ログ監視装置によって正常なログと判定されたログから所定の条件に合致する部分を抽出することを特徴とする請求項１から４のいずれか１項に記載のホワイトリスト作成装置。
【請求項６】
正常なログの入力を受け付ける入力工程と、
前記ログから、あらかじめ設定された抽出条件に合致する部分を抽出する抽出工程と、
前記抽出工程によって抽出された部分を、前記抽出条件に対応する正規表現に変換する変換工程と、
前記変換工程によって前記抽出された部分が変換された前記ログを、正常なログをフィルタリングするためのルールの集合であるホワイトリストを用いてログを監視する装置に出力する出力工程と、
を含んだことを特徴とするホワイトリスト作成方法。
【請求項７】
コンピュータを、請求項１から５のいずれか１項に記載のホワイトリスト作成装置として機能させるためのホワイトリスト作成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホワイトリスト作成装置、ホワイトリスト作成方法およびホワイトリスト作成プログラムに関する。
【背景技術】
【０００２】
従来、異常なログを監視する方法として、ブラックリスト方式とホワイトリスト方式とが知られている。ブラックリスト方式では、ブラックリストに含まれるキーワードに合致したログを異常なログと判断する。一方、ホワイトリスト方式では、ホワイトリストに含まれるキーワードに合致しなかったログを異常なログと判断する。
【０００３】
例えば、運用監視システムであるＺａｂｂｉｘやＨｉｎｅｍｏｓでは、一般的にブラックリスト方式が用いられている。一方、ｒｅｗｒｉｔｅ−ｔａｇ−ｆｉｌｔｅｒプラグインを利用したＦｌｕｅｎｔｄ、またはｔｅｎｓｈｉでは、ホワイトリスト方式を用いて異常なログの監視を行うことができる。
【０００４】
ブラックリスト方式は既知の異常なログに対する検知精度は高いが、未知の異常なログに対する検知精度が低いという特徴がある。一方、ホワイトリストは正常と判断されたログから作成されるため、ホワイトリスト方式は、未知の異常なログに対する検知精度が高い。そのため、ホワイトリスト方式は、例えばブラックリスト方式で検知できなかった未知のログを検知する目的で用いられる場合がある。
【０００５】
また、ブラックリスト方式では、キーワードに合致する部分が含まれるログを異常と判断すればよいため、ブラックリストに含まれるフィルタリングルールの数を抑えることができる。これに対して、ホワイトリスト方式では、異常なログを漏れなく検知すると同時に、ユーザへの通知に含まれる正常ログを少なくすることが求められる。このため、ホワイトリストには、ブラックリストに比べて大量のフィルタリングルールを含める必要がある。なお、ホワイトリストに含まれるフィルタリングルールが不十分である場合、ユーザへの検知の通知が大量に発生してしまい、真に必要な通知がユーザに認知されないおそれがある。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】“Zabbix”  ［online］、［2015年10月2日検索］、インターネット（http://www.zabbix.com/）
【非特許文献２】“Hinemos”  ［online］、［2015年10月2日検索］、インターネット（http://www.hinemos.info/）
【非特許文献３】“Fluentd”  ［online］、［2015年10月2日検索］、インターネット（http://www.fluentd.org/）
【非特許文献４】“tenshi”  ［online］、［2015年10月2日検索］、インターネット（http://inversepath.com/tenshi.html）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来のホワイトリスト方式には、十分なフィルタリングルールを含んだホワイトリストを効率良く作成することができないという問題があった。
【０００８】
例えば、正規表現を用いて大量のフィルタリングルールを含んだホワイトリストを作成する場合、現状ではログを基に手動でホワイトリストを作成するほかない。このため、従来の技術では、正規表現を用いて十分なフィルタリングルールを含んだホワイトリストを効率良く作成することができない。
【０００９】
また、ログをそのままホワイトリストに追加することで、ホワイトリスト作成のための作業量を削減することができるが、その場合、ホワイトリストに含まれるフィルタリングルールが不十分になるおそれがある。このため、ログをそのまま追加することでは、十分なフィルタリングルールを含んだホワイトリストを作成できない場合がある。
【課題を解決するための手段】
【００１０】
本発明のホワイトリスト作成装置は、正常なログの入力を受け付ける入力部と、前記ログから、あらかじめ設定された抽出条件に合致する部分を抽出する抽出部と、前記抽出部によって抽出された部分を、前記抽出条件に対応する正規表現に変換する変換部と、前記変換部によって前記抽出された部分が変換された前記ログを、正常なログをフィルタリングするためのルールの集合であるホワイトリストを用いてログを監視するログ監視装置に出力する出力部と、を有することを特徴とする。
【００１１】
また、本発明のホワイトリスト作成方法は、正常なログの入力を受け付ける入力工程と、前記ログから、あらかじめ設定された抽出条件に合致する部分を抽出する抽出工程と、前記抽出工程によって抽出された部分を、前記抽出条件に対応する正規表現に変換する変換工程と、前記変換工程によって前記抽出された部分が変換された前記ログを、正常なログをフィルタリングするためのルールの集合であるホワイトリストを用いてログを監視する装置に出力する出力工程と、を含んだことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、十分なフィルタリングルールを含んだホワイトリストを効率良く作成することができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、第１の実施形態に係るログ監視システムの構成の一例を示す図である。
【図２】図２は、第１の実施形態に係るホワイトリスト作成装置の変換部の構成の一例を示す図である。
【図３】図３は、抽出条件と変換方法の一例を示す図である。
【図４】図４は、変換前と変換後のログの一例を示す図である。
【図５】図５は、第１の実施形態に係るログ監視システムの処理の一例を示すシーケンス図である。
【図６】図６は、第１の実施形態に係るホワイトリスト作成装置の処理の一例を示すフローチャートである。
【図７】図７は、プログラムが実行されることにより、ホワイトリスト作成装置が実現されるコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１４】
以下に、本願に係るホワイトリスト作成装置、ホワイトリスト作成方法およびホワイトリスト作成プログラムの実施形態を図面に基づいて詳細に説明する。なお、この実施形態により本発明が限定されるものではない。
【００１５】
［第１の実施形態］
まず、第１の実施形態に係るログ監視システムおよびホワイトリスト作成装置の構成、処理の流れおよび効果を説明する。
【００１６】
［ログ監視システムの構成］
まず、図１を用いてログ監視システムの構成について説明する。図１は、第１の実施形態に係るログ監視システムの構成の一例を示す図である。図１に示すように、ログ監視システム１はホワイトリスト作成装置１０およびログ監視装置２０を有する。
【００１７】
ホワイトリスト作成装置１０は、ユーザから入力されたログ等を基に、正常なログをフィルタリングするためのルールの集合であるホワイトリストの作成を行う。ホワイトリスト作成装置１０は、入力部１１、抽出部１２、変換部１３、出力部１４および記憶部１５を有する。
【００１８】
入力部１１は、ログの入力を受け付ける。入力部１１には、例えばユーザが正常であると判断したログが入力される。ここで、入力部１１には、例えばユーザが異常であると判断したログは入力されない。また、入力部１１は、例えばネットワークで接続されたユーザ端末からログファイルを読み込むことによってログの入力を受け付ける。
【００１９】
抽出部１２は、入力部１１に入力されたログから、あらかじめ設定された抽出条件に合致する部分を抽出する。抽出条件は、例えば正規表現によって表される。
【００２０】
変換部１３は、抽出部１２によって抽出された部分を、抽出条件に対応した変換方法によって変換する。例えば、変換部１３は、抽出部１２によって抽出された部分を、抽出条件に対応する正規表現に変換する。ここで、記憶部１５は、前述の抽出条件および抽出条件に対応した変換方法を記憶しているものとする。
【００２１】
例えば、抽出部１２は、１０進数または１６進数であるという抽出条件に合致する部分を抽出する。このとき、変換部１３は、部分を、１０進数または１６進数に対応する正規表現に変換する。また、例えば抽出部１２は、空白が連続するという抽出条件に合致する部分を抽出する。このとき、変換部１３は、部分を、複数の空白の連続に対応する正規表現に変換する。また、例えば変換部１３の削除部１３１は、ログから、ログの文頭の日時およびホスト名を表す部分を削除する。出力部１４は、削除部１３１によって部分が削除されたログを出力する。
【００２２】
出力部１４は、変換部１３によって部分が変換されたログを、ログ監視装置２０に出力する。
【００２３】
記憶部１５は、抽出部１２で用いられる抽出条件および変換部１３で用いられる抽出条件に対応した変換方法を記憶する。記憶部１５に記憶されている抽出条件および変換方法の詳細については後述する。
【００２４】
また、ログ監視装置２０は、ホワイトリスト作成装置１０によって作成されたホワイトリストを用いてログの監視を行う。ログ監視装置２０は、設定部２１、記憶部２２および監視部２３を有する。
【００２５】
設定部２１は、ホワイトリスト作成装置１０の出力部１４から取得した変換されたログをホワイトリストとして記憶部２２に記憶させる。監視部２３は、記憶部２２に記憶されているホワイトリストを用いて、リアルタイムまたはバッチ処理としてログの監視を行う。
【００２６】
このとき、監視部２３は、ホワイトリストに記載された正規表現に合致するログを正常なログと判定する。また、監視部２３は、ホワイトリストに記載された正規表現に合致しないログを異常なログと判定する。なお、監視部２３は、ホワイトリストを用いた監視だけでなく、ブラックリストを用いた監視等をさらに行うようにしてもよい。
【００２７】
［ホワイトリスト作成装置の構成］
次に、図２を用いてホワイトリスト作成装置の変換部の構成について説明する。図２は、第１の実施形態に係るホワイトリスト作成装置の変換部の構成の一例を示す図である。ホワイトリスト作成装置１０は、抽出したログを正規表現に変換する。ここで、仮に、ログを「.*」という正規表現にしてしまうと、すべてのログがこの正規表現に含まれてしまい、異常ログを検出することができなくなる。そのため、あらかじめログのフォーマットが明確で、正規表現にして複数のログをまとめても問題ないとわかっている部分以外は、正規表現で表すことは避ける。
【００２８】
一方、数値および空白文字の場合には、それ単独で意味を持つことはなく、数値部分が異なることでログの内容が異なる場合には、文字列で表されるメッセージ内容も変わると考えられる。例えば、数値で表されるエラーコードがログによって異なることが考えられるが、この場合、エラーコードが変化すると、ログに表示されるエラーの内容も変化する。このため、数値および空白文字は正規表現に変換しても問題ないと考えられる。
【００２９】
図２に示すように、変換部１３は、削除部１３１、エスケープ処理部１３２、特定部変換部１３３、数変換部１３４、アドレス変換部１３５、空白変換部１３６および日時変換部１３７を有する。変換部１３の各部は、記憶部１５に記憶されている変換方法に従って処理を行う。
【００３０】
ここで、図３を用いて、記憶部１５に記憶されている抽出条件および変換方法について説明する。図３に示すように、記憶部１５は抽出条件および変換方法を記憶する。抽出条件には、例えば「文頭の日時およびホスト名」のように、あらかじめログを出力する装置の設定に合わせて位置を特定できるものがある。また、抽出条件には、「所定のＩＤ」のように、あらかじめ正規表現化しても問題がないとわかっているものもある。その他にも、抽出条件は、「日時」、「ＩＰｖ４ホストのＩＰアドレス」または「１６進数」のように、正規表現等で表された条件に合致する文字列とすることもできる。
【００３１】
例えば、抽出条件「１６進数」は、具体的には以下の（１）から（３）のように表すことができる。なお、１６進数においては0から9、aからfおよびAからFが数値として用いられる。
（１）"0x"、"tx"、"tap"、"req-"、"id="で始まり、数値および[a-fA-F]で構成される文字列（"-"区切りは許容）。
（２）区切り文字（"-"等）で挟まれ、１つ以上の数値および[a-fA-F]で構成される文字列。
（３）前後が（１）または（２）に合致する文字列で、"-"区切りの[a-fA-F]から成る文字列。
【００３２】
また、例えば抽出条件「文頭の日時およびホスト名」に対応する変換方法は、「削除」である。この場合、削除部１３１は、抽出条件に合致する部分を削除する。また、抽出条件「\,|,(,),{,},[,]のいずれかの文字」に対応する変換方法は、「文字の前に「\」を追加」である。この場合、エスケープ処理部１３２は抽出条件に合致する文字の前に「\」を追加する。
【００３３】
また、例えば抽出条件「所定のＩＤ」に対応する変換方法は、「正規表現「\w+」に変換」である。この場合、特定部変換部１３３は、抽出条件に合致する部分を「\w+」に変換する。なお、所定のＩＤとはあらかじめ半角英数で表され、特定の文字列の後に現れることが分かっているものとする。
【００３４】
また、例えば抽出条件「１６進数」に対応する変換方法は、「正規表現「[\da-fA-F]+」に変換」である。この場合、数変換部１３４は、抽出条件に合致する部分を「[\da-fA-F]+」に変換する。
【００３５】
また、例えば抽出条件「ＩＰｖ４ホストのＩＰアドレス」に対応する変換方法は、「正規表現「(\d{1,3}\.){3}\d{1,3}」に変換」である。この場合、アドレス変換部１３５は、抽出条件に合致する部分を「(\d{1,3}\.){3}\d{1,3}」に変換する。
【００３６】
また、例えば抽出条件「連続する空白」に対応する変換方法は、「正規表現「\s+」に変換」である。この場合、空白変換部１３６は、抽出条件に合致する部分を「\s+」に変換する。
【００３７】
また、例えば抽出条件「日時」に対応する変換方法は、「正規表現「(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\  \d{1,2}\s[\d\  ]\d:\d{2}:\d{2}」に変換」である。この場合、日時変換部１３７は、抽出条件に合致する部分を「(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\  \d{1,2}\s[\d\  ]\d:\d{2}:\d{2}」に変換する。
【００３８】
なお、抽出部１２および変換部１３は、抽出および変換を図３のＮＯの順に実行する。そのため、例えばＮＯ１において削除された日時の部分は、ＮＯ４においては変換の対象外となる。また、例えば空白文字を区切り文字として使用するシステムから出力されるログの場合、空白文字のエスケープ処理が必要になる。
【００３９】
また、ＩＰアドレスおよびＭＡＣアドレスは、１０進数または１６進数を用いて表される場合が多いため、数変換部１３４によるＮＯ９〜ＮＯ１１の変換の前に、アドレス変換部１３５によるＮＯ６〜ＮＯ８を配置することで、アドレスが数字として変換されてしまうことを防止することができる。
【００４０】
次に、具体的な例を挙げてログの変換について説明する。図４は、変換前と変換後のログの一例を示す図である。図４の１ａの部分は、文頭の日時およびホスト名を表しており、図３のＮＯ１の抽出条件に合致するため、削除される。また、図４の２ａの部分は、「sendmail」の後に現れるメッセージＩＤであり、図３のＮＯ２の抽出条件に合致する、２ｂに示すように正規表現に変換される。
【００４１】
また、図４の３ａおよび５ａの部分は、それぞれ図３のＮＯ３およびＮＯ５の抽出条件に合致するため、３ｂおよび５ｂに示すようにエスケープ処理が行われる。また、図４の４ａおよび６ａ〜１２ａの部分は、それぞれ図３のＮＯ４およびＮＯ６〜ＮＯ１２の抽出条件に合致するため、４ｂおよび６ｂ〜１２ｂに示すように正規表現に変換される。
【００４２】
［第１の実施形態の処理］
図５を用いて、ログ監視システム１の処理について説明する。図５は、第１の実施形態に係るログ監視システムの処理の一例を示すシーケンス図である。図５に示すように、まず、ユーザはホワイトリスト作成装置１０に正常と判断したログを入力する（ステップＳ１０１）。
【００４３】
ホワイトリスト作成装置１０は、ログの入力を受け付ける（ステップＳ１０２）。次に、ホワイトリスト作成装置１０は、ログから所定の抽出条件に合致する部分を抽出し、所定の変換方法によって変換を行う（ステップＳ１０３）。そして、ホワイトリスト作成装置１０は、抽出および変換が完了したログをログ監視装置２０に出力する（ステップＳ１０４）。
【００４４】
ログ監視装置２０は、ホワイトリスト作成装置１０から取得したログをホワイトリストに設定する（ステップＳ１０５）。そして、ログ監視装置２０は、ホワイトリストを用いてログを監視する（ステップＳ１０６）。
【００４５】
さらに、ログ監視装置２０は、ホワイトリスト作成装置１０にログをフィードバックする（ステップＳ１０７）。このように、ログ監視システム１は、ホワイトリストを運用しながら、例えば正常ログを誤って異常ログと判定したログを再度ホワイトリスト作成装置１０にフィードバックすることで学習を行い、これを繰り返してホワイトリストを拡充するようにしてもよい。
【００４６】
このとき、入力部１１は、ログ監視装置２０によって正常なログであると判定されたログの入力を受け付ける。これにより、未知の正常ログは、初出時は異常ログに分類されるが、フィードバックして学習した後には正常ログに分類される。
【００４７】
ここで、図６を用いてホワイトリスト作成装置１０の処理について説明する。図６は、第１の実施形態に係るホワイトリスト作成装置の処理の一例を示すフローチャートである。まず、図６に示すように、ホワイトリスト作成装置１０の入力部１１はログの入力を受け付ける（ステップＳ２０１）。
【００４８】
次に、ホワイトリスト作成装置１０の抽出部１２は、記憶部１５に記憶されている抽出条件に合致する部分をログから抽出する（ステップＳ２０２）。そして、ホワイトリスト作成装置１０の変換部１３は、抽出条件に対応する変換方法に従って抽出されたログを変換する（ステップＳ２０３）。
【００４９】
このとき、抽出が行われていない抽出条件が存在する場合（ステップＳ２０４、Ｙｅｓ）、ステップＳ２０２へ戻り、抽出を行っていない抽出条件について抽出を行う。また、抽出が行われていない抽出条件が存在しない場合（ステップＳ２０４、Ｎｏ）、変換したログをログ監視装置２０に出力し（ステップＳ２０５）、処理を終了する。
【００５０】
［第１の実施形態の効果］
ログ監視の精度は、下記の再現率および適合率によって表すことができる。
再現率＝（異常と判定されたログのうち真に異常なログの数）／（真に異常なログの全数）
適合率＝（異常と判定されたログのうち真に異常なログの数）／（異常と判定されたログの全数）
【００５１】
一般に、ブラックリスト方式は、既知の異常ログの特徴を正規表現で記述するため、適合率が１００％近くになるものの、再現率がそれほど高くなく、未知のログの検知に弱いという傾向がある。一方、ホワイトリスト方式は、ブラックリスト方式の問題点を改善するべく、ブラックリスト方式で漏らした異常ログ、特に未知の異常ログを検知することが目的になる。
【００５２】
このため、ホワイトリスト方式では、再現率１００％を実現することが第１の目標となり、その上で適合率も上げることが求められる。そのためには、十分なフィルタリングルールを含んだホワイトリストが必要になる。
【００５３】
このとき、従来のように、手動でホワイトリストを作成することや、ログをそのままホワイトリストに追加することでは、十分なフィルタリングルールを含んだホワイトリストを作成することは困難である。
【００５４】
そこで、ホワイトリスト作成装置１０の入力部１１は、まず、正常なログの入力を受け付ける。そして、抽出部１２は、ログから、あらかじめ設定された抽出条件に合致する部分を抽出する。ここで、変換部１３は、抽出部１２によって抽出された部分を、抽出条件に対応する正規表現に変換する。その後、出力部１４は、変換部１３によって部分が変換されたログを、正常なログをフィルタリングするためのルールの集合であるホワイトリストを用いてログを監視する装置に出力する。
【００５５】
このように、ホワイトリスト作成装置１０では正規表現で表されたホワイトリストを自動的に作成することが可能であるため、十分なフィルタリングルールを含んだホワイトリストを効率良く作成することができる。さらに、ホワイトリスト作成装置１０で作成された十分なフィルタリングルールを含んだホワイトリストを用いることで、ログ監視における適合率を向上させることができる。
【００５６】
また、例えば抽出部１２は、１０進数または１６進数であるという抽出条件に合致する部分を抽出する。このとき、変換部１３は、部分を、１０進数または１６進数に対応する正規表現に変換する。
【００５７】
また、例えば抽出部１２は、空白が連続するという抽出条件に合致する部分を抽出する。このとき、変換部１３は、部分を、複数の空白の連続に対応する正規表現に変換する。
【００５８】
また、例えば変換部１３の削除部１３１は、ログから、ログの文頭の日時およびホスト名を表す部分を削除する。出力部１４は、削除部１３１によって部分が削除されたログを出力する。
【００５９】
このように、ホワイトリスト作成装置１０は、抽出部１２および変換部１３の設定によって、様々なタイプのログからホワイトリストを作成することができる。
【００６０】
なお、ホワイトリスト作成装置１０によって作成されたホワイトリストを用いてログの監視を行ったところ、文字列を含むログに対する再現率を１００％にすることができた。その際の適合率は、ログの特性や学習用のログデータに大きく依存する。例えば、新しい正常ログが現れにくく、正常なログに大きな変動がない場合、適合率は高くなり１００％近くを実現できるので、本発明は未知の異常ログの検出に役立つ。
【００６１】
さらに、ブラックリスト判定と組み合わせて、あらかじめ問題があるとわかっているログはブラックリストで切り分けて、残ったログに対してホワイトリストを適用することで、より高い精度を実現することが可能になる。
【００６２】
さらに、ホワイトリスト作成装置１０の入力部１１は、ログ監視装置２０によって正常なログであると判定されたログの入力を受け付けるようにしてもよい。この場合、ホワイトリスト作成装置１０は、ログ監視装置２０の監視結果をフィードバックとして受け取り、学習することによって、ログ監視における適合率をさらに向上可能なホワイトリストを作成することができる。
【００６３】
［システム構成等］
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵ（Central  Processing  Unit）および当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００６４】
また、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００６５】
［プログラム］
一実施形態として、ホワイトリスト作成装置１０は、パッケージソフトウェアやオンラインソフトウェアとして上記の監視を実行するホワイトリスト作成プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記のホワイトリスト作成プログラムを情報処理装置に実行させることにより、情報処理装置をホワイトリスト作成装置１０として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）等の移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistants）等のスレート端末等がその範疇に含まれる。
【００６６】
また、ホワイトリスト作成装置１０は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記のホワイトリスト作成に関するサービスを提供するサーバ装置として実装することもできる。例えば、ホワイトリスト作成装置１０は、変換前のログを入力とし、変換後のログを出力とするホワイトリスト作成サービスを提供するサーバ装置として実装される。この場合、ホワイトリスト作成装置１０は、Ｗｅｂサーバとして実装することとしてもよいし、アウトソーシングによって上記のホワイトリスト作成に関するサービスを提供するクラウドとして実装することとしてもかまわない。
【００６７】
図７は、プログラムが実行されることにより、ホワイトリスト作成装置が実現されるコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【００６８】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ（Random  Access  Memory）１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【００６９】
ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、ホワイトリスト作成装置１０の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、ホワイトリスト作成装置１０における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤ（Solid  State  Drive）により代替されてもよい。
【００７０】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して実行する。
【００７１】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３およびプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３およびプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００７２】
１  ログ監視システム
１０  ホワイトリスト作成装置
２０  ログ監視装置
１１  入力部
１２  抽出部
１３  変換部
１４  出力部
１５、２２  記憶部
２１  設定部
２３  監視部
１３１  削除部
１３２  エスケープ処理部
１３３  特定部変換部
１３４  数変換部
１３５  アドレス変換部
１３６  空白変換部
１３７  日時変換部
【図１】
0006280089.tif 000002
【図２】
0006280089.tif 000003
【図３】
0006280089.tif 000004
【図４】
0006280089.tif 000005
【図５】
0006280089.tif 000006
【図６】
0006280089.tif 000007
【図７】
0006280089.tif 000008