IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 日本電気株式会社の特許一覧 ▶ 学校法人立命館の特許一覧

特許7421196ログ生成システム、ログ生成方法およびログ生成プログラム
<>
  • 特許-ログ生成システム、ログ生成方法およびログ生成プログラム 図1
  • 特許-ログ生成システム、ログ生成方法およびログ生成プログラム 図2
  • 特許-ログ生成システム、ログ生成方法およびログ生成プログラム 図3
  • 特許-ログ生成システム、ログ生成方法およびログ生成プログラム 図4
  • 特許-ログ生成システム、ログ生成方法およびログ生成プログラム 図5
  • 特許-ログ生成システム、ログ生成方法およびログ生成プログラム 図6
  • 特許-ログ生成システム、ログ生成方法およびログ生成プログラム 図7
  • 特許-ログ生成システム、ログ生成方法およびログ生成プログラム 図8
  • 特許-ログ生成システム、ログ生成方法およびログ生成プログラム 図9
  • 特許-ログ生成システム、ログ生成方法およびログ生成プログラム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-16
(45)【発行日】2024-01-24
(54)【発明の名称】ログ生成システム、ログ生成方法およびログ生成プログラム
(51)【国際特許分類】
   G06F 21/00 20130101AFI20240117BHJP
   G06F 11/34 20060101ALI20240117BHJP
【FI】
G06F21/00
G06F11/34 147
G06F11/34 138
【請求項の数】 8
(21)【出願番号】P 2022532923
(86)(22)【出願日】2020-07-01
(86)【国際出願番号】 JP2020025856
(87)【国際公開番号】W WO2022003868
(87)【国際公開日】2022-01-06
【審査請求日】2022-12-27
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(73)【特許権者】
【識別番号】593006630
【氏名又は名称】学校法人立命館
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】島 成佳
(72)【発明者】
【氏名】羽角 太地
(72)【発明者】
【氏名】毛利 公一
(72)【発明者】
【氏名】鄭 俊俊
(72)【発明者】
【氏名】藤枝 慶弘
【審査官】行田 悦資
(56)【参考文献】
【文献】国際公開第2015/029464(WO,A1)
【文献】国際公開第2018/235252(WO,A1)
【文献】特開2018-116688(JP,A)
【文献】国際公開第2010/050195(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/00
G06F 11/34
(57)【特許請求の範囲】
【請求項1】
ログ群で構成されたログデータから、対象アプリケーションのユーザ操作にかかるログを抽出するログ抽出部と、
抽出された前記ログの時系列リストに基づいて、イベントグループに関連付けられたユーザ操作状態の遷移を推定するユーザ操作モデルを生成するモデル生成部と、
生成された前記ユーザ操作モデルを用いて推定される前記ユーザ操作状態の遷移に関する情報に基づいて、模擬ユーザ操作ログデータを生成する模擬ログ生成部と
を備え、
前記イベントグループは、1または複数のログから構成されるイベントを1または複数含む
ログ生成システム。
【請求項2】
前記モデル生成部は、抽出された前記ログの前記時系列リストを、観測されるイベントグループの種別を識別する観測シンボルのシーケンスである観測シーケンスに変換し、前記観測シーケンスを用いて、前記ユーザ操作モデルを生成する
請求項1に記載のログ生成システム。
【請求項3】
前記モデル生成部は、イベントグループ内の第1のイベントに含まれるログの識別情報と、ユーザ操作状態と、前記ユーザ操作状態に遷移した場合に観測される可能性がある1または複数の観測シンボルとを互いに関連付ける観測シンボルテーブルを用いて、前記ユーザ操作モデルを生成する
請求項2に記載のログ生成システム。
【請求項4】
前記模擬ログ生成部は、前記ユーザ操作モデルを用いて、ユーザ操作状態と、そのユーザ操作状態に遷移した場合に生じるイベントグループとを推定し、前記イベントグループに含まれるログの構成が記述されたログ構成情報を用いて、推定された前記イベントグループから前記模擬ユーザ操作ログデータを生成する
請求項1から3のいずれか一項に記載のログ生成システム。
【請求項5】
イベントグループと、前記イベントグループに含まれるイベント間の時系列関係と、前記イベントに含まれるログのログ構成情報とを対応付けるイベントグループ-ログ対応テーブルを記憶するログ生成情報記憶部をさらに備える
請求項4に記載のログ生成システム。
【請求項6】
観測された参照ログデータから、前記イベントグループ-ログ対応テーブルを生成する対応テーブル生成部をさらに備える
請求項5に記載のログ生成システム。
【請求項7】
ログ群で構成されたログデータから、対象アプリケーションのユーザ操作にかかるログを抽出するログ抽出ステップと、
抽出された前記ログの時系列リストに基づいて、イベントグループに関連付けられたユーザ操作状態の遷移を推定するユーザ操作モデルを生成するモデル生成ステップと、
生成された前記ユーザ操作モデルを用いて推定される前記ユーザ操作状態の遷移に関する情報に基づいて、模擬ユーザ操作ログデータを生成する模擬ログ生成ステップと
を備え、
前記イベントグループは、1または複数のログから構成されるイベントを1または複数含む
ログ生成方法。
【請求項8】
ログ群で構成されたログデータから、対象アプリケーションのユーザ操作にかかるログを抽出するログ抽出ステップと、
抽出された前記ログの時系列リストに基づいて、イベントグループに関連付けられたユーザ操作状態の遷移を推定するユーザ操作モデルを生成するモデル生成ステップと、
生成された前記ユーザ操作モデルを用いて推定される前記ユーザ操作状態の遷移に関する情報に基づいて、模擬ユーザ操作ログデータを生成する模擬ログ生成ステップと
をコンピュータに実現させるログ生成プログラムであって、
前記イベントグループは、1または複数のログから構成されるイベントを1または複数含む
ログ生成プログラム
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ログ生成システム、ログ生成方法およびコンピュータ可読媒体に関する。
【背景技術】
【0002】
近年、組織を標的としたサイバー攻撃により、情報漏洩および事業停止などの被害が増加しており、サイバー攻撃に対する対策の強化が求められている。このようなサイバー攻撃に対する対策を強化するためには、システムのセキュリティ担当者の調査スキルの向上が不可欠となる。このため、サイバー攻撃の痕跡となるインシデントのログ(以下「攻撃ログ」と呼ぶ)を、インシデントには関係のない通常業務のログ(以下「正常ログ」と呼ぶ)の中から受講者に見つけ出させるサイバーセキュリティ演習が行われている。したがって、サイバーセキュリティ演習においては、攻撃ログに加えて、正常ログを予め用意しておく必要がある。
【0003】
ここでサイバーセキュリティ演習においては、正常ログは、人手で作成する、または予め想定された環境下で端末における通常操作のログを長期間記録することによって、取得されている。しかしながら、サイバーセキュリティ演習を行うためには、膨大な数の正常ログが必要となる。これは、調査スキルの向上を図るためには、受講者は、サイバーセキュリティ演習を複数回受講する必要があるが、同じ正常ログを使い回したのでは調査スキルは向上しないため、正常ログを演習の度に新たに用意する必要があるからである。
【0004】
特許文献1には、本番環境システムの操作履歴情報から抽出された抽出操作履歴に対して、操作履歴間の不整合を解消するように修正し、模擬テストシステムにおいて本番環境システムの動作を模擬する模擬システムが開示されている。
【0005】
また特許文献2には、実運用環境のオペレーションサポートシステムから取得したシステムログデータから、必要な操作履歴を抽出し、装置番号等のパラメータをテスト環境用に適用させることで操作手順を模擬するオペレータ擬似システムが開示されている。
【先行技術文献】
【特許文献】
【0006】
【文献】国際公開第2015/029464号
【文献】特開2007-140954号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、上述の特許文献1および2に記載のシステムでは、テスト環境における操作ログのバリエーションを豊富にするためには、実運用環境の操作履歴データを大量に取得する必要があるという問題がある。
【0008】
本開示の目的は、上述した課題に鑑み、設定環境下で動作する端末からのログ出力および人手によることなく、正常ログをより豊富なバリエーションで生成することができるログ生成システム、ログ生成方法およびコンピュータ可読媒体を提供することにある。
【課題を解決するための手段】
【0009】
本開示の一態様に係るログ生成システムは、ログ群で構成されたログデータから、対象アプリケーションのユーザ操作にかかるログを抽出するログ抽出部と、抽出された前記ログの時系列リストに基づいて、イベントグループに関連付けられたユーザ操作状態の遷移を推定するユーザ操作モデルを生成するモデル生成部と、生成された前記ユーザ操作モデルを用いて推定される前記ユーザ操作状態の遷移に関する情報に基づいて、模擬ユーザ操作ログデータを生成する模擬ログ生成部とを備える。前記イベントグループは、1または複数のログから構成されるイベントを1または複数含む。
【0010】
本開示の一態様に係るログ生成方法は、ログ群で構成されたログデータから、対象アプリケーションのユーザ操作にかかるログを抽出するログ抽出ステップと、抽出された前記ログの時系列リストに基づいて、イベントグループに関連付けられたユーザ操作状態の遷移を推定するユーザ操作モデルを生成するモデル生成ステップと、生成された前記ユーザ操作モデルを用いて推定される前記ユーザ操作状態の遷移に関する情報に基づいて、模擬ユーザ操作ログデータを生成する模擬ログ生成ステップとを備える。前記イベントグループは、1または複数のログから構成されるイベントを1または複数含む。
【0011】
本開示の一態様に係る非一時的なコンピュータ可読媒体は、ログ生成プログラムが格納される。前記ログ生成プログラムは、ログ群で構成されたログデータから、対象アプリケーションのユーザ操作にかかるログを抽出するログ抽出ステップと、抽出された前記ログの時系列リストに基づいて、イベントグループに関連付けられたユーザ操作状態の遷移を推定するユーザ操作モデルを生成するモデル生成ステップと、生成された前記ユーザ操作モデルを用いて推定される前記ユーザ操作状態の遷移に関する情報に基づいて、模擬ユーザ操作ログデータを生成する模擬ログ生成ステップとをコンピュータに実現させる。前記イベントグループは、1または複数のログから構成されるイベントを1または複数含む。
【発明の効果】
【0012】
本開示により、設定環境下で動作する端末からのログ出力および人手によることなく、正常ログをより豊富なバリエーションで生成することができるログ生成システム、ログ生成方法およびコンピュータ可読媒体を提供することができる。
【図面の簡単な説明】
【0013】
図1】実施形態1にかかるログ生成システムの構成を示すブロック図である。
図2】実施形態2にかかるログ生成装置の構成の一例を示すブロック図である。
図3】実施形態2にかかるイベントグループの概念図である。
図4】実施形態2にかかる抽出ルールのデータ構造の一例を示す図である。
図5】実施形態2にかかる観測シンボルテーブルのデータ構造の一例を示す図である。
図6】実施形態2にかかるイベントグループ-ログ対応テーブルのデータ構造の一例を示す図である。
図7】実施形態2にかかるログ生成装置の処理の一例を示すフローチャートである。
図8】実施形態2にかかるログ生成装置のユーザ操作モデル生成処理の一例を説明するための図である。
図9】実施形態2にかかるログ生成装置の模擬ログ生成処理の一例を示すフローチャートである。
図10】実施形態3にかかるログ生成装置の構成の一例を示すブロック図である。
【発明を実施するための形態】
【0014】
以下、実施形態を通じて本開示を説明するが、請求の範囲にかかる開示を以下の実施形態に限定するものではない。また、実施形態で説明する構成の全てが課題を解決するための手段として必須であるとは限らない。各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
【0015】
<実施形態1>
図1は、実施形態1にかかるログ生成システム10の構成を示すブロック図である。ログ生成システム10は、ログ抽出部12と、モデル生成部13と、模擬ログ生成部14とを備える。
【0016】
ログ抽出部12は、ログ群で構成されたログデータから、対象アプリケーションのユーザ操作にかかるログを抽出する。
モデル生成部13は、ログ抽出部12によって抽出されたログの時系列リストに基づいて、ユーザ操作状態の遷移を推定するユーザ操作モデルを生成する。ここでユーザ操作状態は、イベントグループに関連付けられている。そしてイベントグループは、イベントを1または複数含み、イベントは、1または複数のログから構成される。
模擬ログ生成部14は、生成されたユーザ操作モデルを用いて推定されるユーザ操作状態の遷移に関する情報に基づいて、模擬ユーザ操作ログデータを生成する。
【0017】
このように実施形態1によれば、ログ生成システム10は、潜在的なユーザ操作状態の遷移を模擬し、模擬された遷移に基づいて模擬ユーザ操作ログデータを生成する。したがってログ生成システム10は、設定環境下で動作する端末からのログ出力および人手によることなく、正常ログをより豊富なバリエーションで生成することができる。
【0018】
<実施形態2>
次に図2~9を用いて、本開示の実施形態2について説明する。図2は、実施形態2にかかるログ生成システム(以下、ログ生成装置と呼ぶ)20の構成の一例を示すブロック図である。ログ生成装置20は、サイバーセキュリティ演習で必要な正常ログを生成するコンピュータである。ここで正常ログは、設定環境下で通常業務として行われる操作にかかるログを指す。ログは、複数行のログテキストから構成される記録を指す。ログ生成装置20は、ログデータ取得部21と、ログ抽出部22と、モデル生成部23と、模擬ログ生成部24と、抽出ルール記憶部25と、モデル生成情報記憶部26と、ログ生成情報記憶部27と、模擬ログ記憶部28とを備える。
【0019】
ログデータ取得部21は、ネットワークを介してログ生成装置20に接続されたログ収集コンピュータ(不図示)から、ログ群で構成されたログデータを取得する。なお、ログ収集コンピュータには、ログ収集ツールがインストールされている。ログ収集コンピュータは、ログ収集ツールを用いて、コンピュータで生成されたログデータを収集し、収集したログデータをログ生成装置20に出力する。
一例として、ログ収集ツールは、CDIR-Collectorである。CDIR-Collectorは、Windows(登録商標)固有のバイナリ形式のログを収集する。ログ収集コンピュータがCDIR-Collectorを用いる場合は、各ログは、plasoによってJSONファイルに変換される。この場合は、ログデータ取得部21は、JSONファイルに変換されたログ群のログデータを取得する。
【0020】
ログ抽出部22は、抽出ルールに従って、取得したログデータから、指定された抽出対象のアプリケーション(対象アプリケーションと呼ぶ)のユーザ操作にかかるログを抽出する。抽出ルールは、ドメイン知識に基づいて予め作成され、抽出ルール記憶部25に格納されている。
【0021】
モデル生成部23は、抽出されたログの時系列リストを生成し、ログの時系列リストに基づいて、ユーザ操作モデルを生成する。ユーザ操作モデルは、ユーザ操作状態の遷移、すなわちユーザ操作状態のシーケンスを推定するためのモデルである。ユーザ操作状態は、イベントグループに関連付けられている、ユーザ操作にかかる状態である。したがってユーザ操作モデルは、ユーザ操作状態に加えて、そのユーザ操作状態に遷移した場合に生じるイベントグループを推定するためのモデルであってよい。
【0022】
ここでログ、イベントグループおよびユーザ操作状態の間の関係について説明する。図3は、実施形態2にかかるイベントグループの概念図である。イベントグループは、ユーザ操作に対応して発生するイベントのグループであり、1または複数のイベントを含む。イベントは、ユーザ操作によって生じるコンピュータの動作を示し、イベントが発生した結果として、1または複数のログが出力される。
【0023】
図3に示す例においては、イベントグループ1は、イベント1と、イベント2と、イベント3a,3bと、イベント4とを含む。まず、ユーザ操作によってlnkファイルの実行が要求されたことに応じて、コンピュータは、lnkファイルを実行する(イベント1)。そしてlnk実行ログが出力される。イベント1に続いて、コンピュータは、シェルを用いてexeファイルを実行する(イベント2)。そしてexe実行ログ1~3が出力される。イベント2に続いて、コンピュータは、子プロセス1および2を生成し、実行する(イベント3a,3b)。そして子プロセス1実行ログおよび子プロセス2実行ログがそれぞれ出力される。イベント3aに続いて、コンピュータは、親プロセスによるアクセストークンを変更する(イベント4)。そして変更にかかるログが出力される。なお、イベントグループの出発点であるイベントのプロセスを、親プロセスと呼び、親プロセスから呼び出されたプロセスを子プロセスと呼ぶ。
【0024】
このように、1つのユーザ操作によって、そのユーザ操作に対応して1または複数のイベントが生じ、これらのイベントがイベントグループを構成する。そしてイベントごとに1または複数のログが出力される。なお、ユーザ操作は、本例に示すようなlnkファイル等のプログラムの実行要求にかかる操作であってもよく、Webページの検索要求にかかる操作であってもよい。そしてユーザ操作状態は、ユーザの操作によりこのような要求がなされた状態を指す。ユーザ操作状態としては、一例として、”Program_Operation”および”Browser_Usage”等が挙げられる。
【0025】
本実施形態2では、モデル生成部23は、イベントグループを観測シンボルとして扱い、ログの時系列リストを観測シンボルのシーケンス(観測シーケンス)に変換する。観測シンボルは、観測されるイベントグループを識別するシンボルである。観測シーケンスへの変換は、後述する観測シンボルテーブルを用いて行われる。そしてモデル生成部23は、学習データとして観測シーケンスを用いて、ユーザ操作状態およびそのユーザ操作状態に遷移した場合に生じるイベントグループを推定するユーザ操作モデルを生成する。
【0026】
模擬ログ生成部24は、生成されたユーザ操作モデルを用いてユーザ操作状態を推定し、推定されたユーザ操作状態の遷移に関する情報に基づいて、模擬ユーザ操作ログデータを生成する。本実施形態2では、模擬ログ生成部24は、ユーザ操作モデルを用いて、次のユーザ操作状態と、上記次のユーザ操作状態に遷移した場合に生じるイベントグループとを推定する。そして、模擬ログ生成部24は、後述するイベントグループ-ログ対応テーブル(EGログ対応テーブル)から、推定したイベントグループに含まれるログの構成が記述されたログ構成情報を取得する。そして、模擬ログ生成部24は、ログ構成情報およびシステム構成情報を用いて、模擬ユーザ操作ログデータを生成する。
【0027】
なお、システム構成情報は、模擬ログ生成部24の処理で用いるシステム依存のパラメータである。一例として、システム構成情報は、コンピュータ名、ユーザ名、IPアドレス、ログの生成開始時刻およびログの生成終了時刻等である。システム構成情報は、例えば、ログ生成装置20の管理者によって作成され、管理者の端末等を介して入力されてよい。
【0028】
抽出ルール記憶部25は、ログ抽出部22が用いる抽出ルールを記憶する記憶媒体である。
モデル生成情報記憶部26は、モデル生成部23が用いる観測シンボルテーブルを記憶する記憶媒体である。
ログ生成情報記憶部27は、模擬ログ生成部24が用いるEGログ対応テーブルおよびシステム構成情報を記憶する記憶媒体である。
模擬ログ記憶部28は、模擬ログ生成部24によって生成された模擬ユーザ操作ログデータを記憶し、蓄積する記憶媒体である。
【0029】
図4は、実施形態2にかかる抽出ルールのデータ構造の一例を示す図である。抽出ルールは、アプリケーションに対応するログタイプを規定する。ここでログタイプは、取得したログデータに含まれるログに記述されており、ログ抽出部22によってログから取得される。本例では、抽出ルールは、アプリケーションの種別に応じて定められているアプリケーション識別情報(アプリケーションID)と、ログタイプとを関連付ける。たとえばログタイプ識別情報(ログタイプID)がT1~T5のログタイプのログは、同種のアプリケーションに対応するログであり、そのアプリケーションIDは、「AP001」である。一方、ログタイプIDがT6のログは、ログタイプIDがT1~T5のログと異種のアプリケーションに対応するログであり、そのアプリケーションIDは「AP002」である。
【0030】
図5は、実施形態2にかかる観測シンボルテーブルのデータ構造の一例を示す図である。観測シンボルテーブルは、イベントグループ内の親プロセスに対応するイベント(第1のイベント)に含まれるログの識別情報と、ユーザ操作状態と、そのユーザ操作状態に遷移した場合に観測される可能性がある観測シンボルとを関連付ける。
【0031】
ここで、1つのユーザ操作状態に遷移した場合に、生じる可能性があるイベントグループは1つに限らず、複数存在する場合がある。たとえば”Program_Operation”の状態に遷移した場合、実行要求にかかるプログラムごとに、異なるイベントグループが生じる。つまり、イベントグループを観測シンボルとして扱った場合、1つのユーザ操作状態は、1つの観測シンボルに関連付けられることもあるが、複数の観測シンボルに関連付けられることもある。
【0032】
ユーザ操作状態および観測シンボルは、親プロセスのログから特定することができる。本例では、観測シンボルテーブルは、親プロセスに対応する第1のイベントに含まれるログの識別情報として、第1のイベントに含まれるログのログタイプIDと、そのログに含まれるキー情報とを含む。そして、ユーザ操作状態は、観測シンボルテーブルにおける第1のイベントに含まれるログタイプIDから特定される。一方、観測シンボルは、観測シンボルテーブルにおける第1のイベントに含まれるログのログタイプIDと、キー情報との組み合わせで特定される。
【0033】
したがって、モデル生成部23は、観測シンボルテーブルを用いて、抽出されたログのうち、親プロセスに対応する第1のイベントに含まれるログから観測シンボルを容易に特定することができ、これにより観測シーケンスを容易に生成することができる。またモデル生成部23は、観測シンボルテーブルを用いて、各ユーザ操作状態と、そのユーザ操作状態に関連付けられた観測シンボルとを特定し、ユーザ操作モデルを定義することができる。
【0034】
図6は、実施形態2にかかるEGログ対応テーブルのデータ構造の一例を示す図である。EGログ対応テーブルは、イベントグループと、イベントグループに含まれるイベント間の時系列関係(前後関係)と、イベントに含まれるログのログ構成情報とを対応付けるテーブルである。図6に示す例では、EGログ対応テーブルは、イベントグループを識別する情報として、観測シンボルの項目を有する。またEGログ対応テーブルは、イベント間の前後関係を示す情報として、イベントIDおよびそのイベントの親イベントのID(親イベントID)の項目を有する。これによりイベントグループにおけるイベントが木構造として表される。そしてEGログ対応テーブルは、ログ構成情報として、ログ構成パラメータおよびログタイプの項目を有する。ログ構成パラメータは、たとえば、”appication_focus_count”、”key_path”および”value_name”等のログに記述され、ログを構成するパラメータである。なお、イベント間の前後関係およびログ構成情報は、イベント間およびイベント内におけるプロセスの出力順番などの整合性を考慮して、予め定められている。
【0035】
図7は、実施形態2にかかるログ生成装置20の処理の一例を示すフローチャートである。
まず、ログ生成装置20のログデータ取得部21は、ログ収集コンピュータ(不図示)が収集したログデータをログ収集コンピュータから取得する(ステップS10)。ログデータ取得部21は、取得したログデータをログ抽出部22に供給する。
【0036】
次に、ログ抽出部22は、抽出ルールに従って、ログデータから、指定された対象アプリケーションのユーザ操作にかかるログを抽出する(ステップS11)。この場合、ログ抽出部22は、抽出ルールにおいて、対象アプリケーションに対応するアプリケーションIDに関連付けられたログタイプのログを抽出する。なお、対象アプリケーションが複数ある場合は、対象アプリケーションごとにユーザ操作にかかるログを分類し、以降のステップS12~S15に示す処理を対象アプリケーションごとに繰り返す。ログ抽出部22は、抽出されたログをモデル生成部23に供給する。
【0037】
次に、モデル生成部23は、抽出されたログからタイムスタンプを読み取り、抽出されたログを時系列に並べて、時系列リストを生成する(ステップS12)。
【0038】
次に、モデル生成部23は、観測シンボルテーブルを用いて、ログの時系列リストに含まれる複数のログをイベントグループ単位で観測シンボルに変換し、観測シーケンスを生成する(ステップS13)。このときモデル生成部23は、ログの時系列リストに含まれるイベントグループの各々について、親プロセスに対応するイベントに含まれるログからログタイプを読み取る。そしてモデル生成部23は、そのログから、観測シンボルテーブルにおいてそのログタイプに関連付けられたキーを検索し、ヒットしたキーに応じて、イベントグループの観測シンボルを決定する。モデル生成部23は、ログの時系列リストに含まれるイベントグループの各々を、決定した観測シンボルに置き換えることで、観測シーケンスを生成する。
【0039】
次に、モデル生成部23は、観測シーケンスからユーザ操作モデルを生成する(ステップS14)。本実施形態2では、ユーザ操作モデルの生成には、隠れマルコフモデルが用いられる。しかしこれに限らず、ユーザ操作モデルの生成には、リカレントニューラルネットワーク(RNN)等の状態遷移に基づく他の任意のモデルが用いられてもよい。
【0040】
ここで、隠れマルコフモデルを用いた場合のユーザ操作モデル生成処理について説明する。図8は、実施形態2にかかるログ生成装置20のユーザ操作モデル生成処理の一例を説明するための図である。
隠れマルコフモデルは、観測可能な観測シーケンスO=(O,O,O,…,O)から、観測されない隠れ状態遷移シーケンスX=(X,X,X,…,X)を推定し、そして次の隠れ状態XT+1および次の観測シンボルOT+1を予測する。本モデルにおいては、ある時点での隠れ状態Xは、状態遷移確率行列Aに従って、次の時点での隠れ状態XT+1に遷移する。また次の時点での観測シンボルOT+1は、観測シンボル出力確率行列Bに基づいて、モデル内の隠れ状態XT+1に遷移した場合に出力される可能性がある観測シンボルのリストの中から確率的に選択される。
【0041】
ここでユーザ操作モデルにおいては、観測シーケンスOは、ステップS13で生成した観測シーケンスに対応し、隠れ状態遷移シーケンスXは、ユーザ操作状態のシーケンスに対応する。そして予測された次の時点での隠れ状態XT+1は、次の時点でのユーザ操作状態に対応し、予測された観測シンボルOT+1は、次の時点でのイベントグループを識別するものである。
【0042】
生成にあたり、まずモデル生成部23は、観測シンボルテーブルから、ユーザ操作状態と、各ユーザ操作状態に遷移した場合に観測される可能性がある1または複数の観測シンボルを把握し、ユーザ操作モデルを定義する。そしてモデル生成部23は、定義されたユーザ操作モデルに基づいて、学習データとして観測シーケンスを用いて、モデル内のパラメータである状態遷移確率行列Aおよび観測シンボル出力確率行列Bを最適化する。これにより、モデル生成部23は、ユーザ操作モデルを学習により生成する。モデル生成部23は、ユーザ操作モデルを模擬ログ生成部24に供給する。
【0043】
次に、模擬ログ生成部24は、ユーザ操作モデルを用いて、状態遷移に基づいて、模擬ログ生成処理を行う(ステップS15)。そして模擬ログ生成部24は、処理を終了する。
【0044】
図9は、実施形態2にかかるログ生成装置20の模擬ログ生成処理(すなわち、図7のステップS15に示す処理)の一例を示すフローチャートである。模擬ログ生成部24は、以下のステップS20~S25に示す処理を繰り返す。
【0045】
まず模擬ログ生成部24は、ユーザ操作モデルに基づいて、現在(t=T)のユーザ操作状態から次(t=T+1)のユーザ操作状態を推定する(ステップS20)。ここで本フローが繰り返しの一巡目である場合は、模擬ログ生成部24は、初期(t=0)のユーザ操作状態を設定し、初期のユーザ操作状態から次の時点(t=1)でのユーザ操作状態を推定する。
【0046】
そして、模擬ログ生成部24は、ユーザ操作モデルにより、次のユーザ操作状態から次(t=T+1)のイベントグループを推定し、EGログ対応テーブルのイベント間の前後関係を用いて、イベントグループをイベントの木構造に変換する(ステップS21)。
【0047】
次に、模擬ログ生成部24は、EGログ対応テーブルのログ構成情報を用いて、木構造で表されたイベントグループの各イベントをログのひな型として記述することで、模擬ユーザ操作ログのひな型を生成する(ステップS22)。
【0048】
次に模擬ログ生成部24は、模擬ユーザ操作ログのひな型に、設定環境のシステム構成情報を追加する(ステップS23)。これにより、模擬ログ生成部24は、次(t=T+1)の模擬ユーザ操作ログを生成する(ステップS24)。
【0049】
そして、模擬ログ生成部24は、生成した模擬ユーザ操作ログを模擬ログ記憶部28に格納する(ステップS25)。
【0050】
模擬ログ生成部24は、模擬ログ生成処理を終了するか否かを判定する(ステップS26)。模擬ログ生成部24は、模擬ログ生成処理を終了すると判定した場合(ステップS26でYes)、処理を終了し、そうでない場合(ステップS26でNo)、“T”をインクリメントして、処理をステップS20に戻す。
【0051】
このように模擬ログ生成部24は、ユーザ操作モデルを用いて、ユーザ操作状態を遷移させながら、模擬ユーザ操作ログを順次生成する。しかしこれに限定されず、模擬ログ生成部24は、ユーザ操作モデルを用いて、ユーザ操作状態のシーケンス、そしてイベントグループのシーケンスを推定し、EGログ対応テーブルを用いて、模擬ユーザ操作ログをまとめて生成してもよい。
【0052】
このように実施形態2によれば、ログ生成装置20は、イベントグループ単位でモデル化を行い、そのモデルを用いて潜在的なユーザ操作状態の遷移を模擬し、模擬された遷移に基づいて詳細な模擬ユーザ操作ログデータを生成する。したがってログ生成システム20は、正常ログと類似する傾向をもつものの、ログの順番や種別が厳密には異なる新しい正常ログをより豊富なバリエーションで生成することができる。またログ生成装置20は、設定環境下で動作する端末からのログ出力および人手によることなく、正常ログを大量に生成することができる。
【0053】
またログ生成装置20は、イベント間およびイベント内の整合性が予め考慮されたEGログ対応テーブルを用いて、模擬ユーザ操作ログデータを生成するため、整合性のとれたリアルに近い正常ログを生成することができる。
【0054】
<実施形態3>
次に図10を用いて、本開示の実施形態3について説明する。実施形態3は、ログ生成装置がEGログ対応テーブルを生成することに特徴を有する。図10は、実施形態3にかかるログ生成装置30の構成の一例を示すブロック図である。実施形態3にかかるログ生成装置30は、実施形態2にかかるログ生成装置20と基本的に同様の構成および機能を有する。ただしログ生成装置30は、ログ生成装置20の構成に加えて、参照ログデータ取得部31および対応テーブル生成部32を有する点で相違する。
【0055】
参照ログデータ取得部31は、EGログ対応テーブル生成用の複数の参照ログデータを、ログ収集装置から取得する。そして参照ログデータ取得部31は、取得した参照ログデータを対応テーブル生成部32に供給する。
【0056】
対応テーブル生成部32は、観測された参照ログデータから、イベントグループごとに、イベント間の木構造と、各イベントのログ構成情報とを抽出し、EGログ対応テーブルを生成する。対応テーブル生成部32は、イベント間およびイベント内におけるプロセスの出力順番などの不整合が解消されるようにEGログ対応テーブルを修正してよい。対応テーブル生成部32は、EGログ対応テーブルをログ生成情報記憶部27に格納する。
【0057】
このように実施形態3によれば、ログ生成装置30は、イベント間およびイベント内の不整合が解消されるように予め設計されたEGログ対応テーブルを使用するため、より整合性のとれたリアルに近い正常ログを生成することができる。
【0058】
上述の実施形態ではコンピュータは、パーソナルコンピュータやワードプロセッサ等を含むコンピュータシステムで構成される。しかしこれに限らず、コンピュータは、LAN(ローカル・エリア・ネットワーク)のサーバ、コンピュータ(パソコン)通信のホスト、インターネット上に接続されたコンピュータシステム等によって構成されることも可能である。また、ネットワーク上の各機器に機能分散させ、ネットワーク全体でコンピュータを構成することも可能である。
【0059】
また、上述の実施形態では、本開示をハードウェアの構成として説明したが、本開示は、これに限定されるものではない。本発明は、任意の処理を、プロセッサにコンピュータプログラムを実行させることにより実現することも可能である。
【0060】
上述の例において、プロセッサは、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、FPGA(field-programmable gate array)、DSP(digital signal processor)およびASIC(application specific integrated circuit)等が用いられてよい。
【0061】
上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、DVD(Digital Versatile Disc)、BD(Blu-ray(登録商標) Disc)、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0062】
請求の範囲、明細書、および図面中において示したシステムおよび方法における各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのではない限り、任意の順序で実現しうる。請求の範囲、明細書および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順序で実施することが必須であることを意味するものではない。
【0063】
以上、実施の形態を参照して本開示を説明したが、本開示は上記によって限定されるものではない。本開示の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【0064】
10,20,30 ログ生成システム(ログ生成装置)
12,22 ログ抽出部
13,23 モデル生成部
14,24 模擬ログ生成部
21 ログデータ取得部
25 抽出ルール記憶部
26 モデル生成情報記憶部
27 ログ生成情報記憶部
28 模擬ログ記憶部
31 参照ログデータ取得部
32 対応テーブル生成部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10