JP7341380B2 - ログ処理装置、ログ処理方法及びログ処理プログラム - Google Patents
ログ処理装置、ログ処理方法及びログ処理プログラム Download PDFInfo
- Publication number
- JP7341380B2 JP7341380B2 JP2023540850A JP2023540850A JP7341380B2 JP 7341380 B2 JP7341380 B2 JP 7341380B2 JP 2023540850 A JP2023540850 A JP 2023540850A JP 2023540850 A JP2023540850 A JP 2023540850A JP 7341380 B2 JP7341380 B2 JP 7341380B2
- Authority
- JP
- Japan
- Prior art keywords
- log
- environment
- simulated environment
- parameter value
- simulated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims description 91
- 238000003672 processing method Methods 0.000 title claims description 3
- 230000014509 gene expression Effects 0.000 claims description 83
- 230000006378 damage Effects 0.000 claims description 63
- 238000000034 method Methods 0.000 claims description 49
- 230000010354 integration Effects 0.000 claims description 44
- 230000008569 process Effects 0.000 claims description 28
- 230000008859 change Effects 0.000 claims description 25
- 230000001066 destructive effect Effects 0.000 claims description 19
- 238000006243 chemical reaction Methods 0.000 claims description 14
- 238000000605 extraction Methods 0.000 description 68
- 230000006399 behavior Effects 0.000 description 29
- 239000000284 extract Substances 0.000 description 28
- 238000004364 calculation method Methods 0.000 description 25
- 238000012986 modification Methods 0.000 description 22
- 230000004048 modification Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 9
- 238000001514 detection method Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 101150090341 dst1 gene Proteins 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000007613 environmental effect Effects 0.000 description 5
- 239000000203 mixture Substances 0.000 description 5
- 238000011084 recovery Methods 0.000 description 5
- 230000002411 adverse Effects 0.000 description 4
- 238000011838 internal investigation Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000011017 operating method Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 101100332287 Dictyostelium discoideum dst2 gene Proteins 0.000 description 1
- 101100264226 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) XRN1 gene Proteins 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Description
特許文献1の技術では、標的型攻撃シナリオに沿って攻撃指令サーバが仮想の標的型攻撃を実行した際のログが収集される。
実在するシステム環境である実在環境を模擬するが前記実在環境との間に差異が存在するシステム環境である模擬環境への攻撃が行われた場合に前記模擬環境で発生すると推定される挙動が示されるログである模擬環境ログを取得するログ取得部と、
前記模擬環境と前記実在環境との間の差異を反映させて、前記模擬環境ログを、前記模擬環境への攻撃に対応する攻撃が前記実在環境に行われた場合に前記実在環境で発生すると推定される挙動が示されるログである実在環境ログに変換するログ変換部とを有する。
***概要***
本実施の形態では、ログ処理装置100を説明する。
図1は、本実施の形態に係るログ処理装置100の動作の概要を示す。
最初に、図1を参照して、ログ処理装置100の動作の概要を説明する。
なお、ログ処理装置100の動作手順は、ログ処理方法に相当する。また、ログ処理装置100の動作を実現するプログラムは、ログ処理プログラムに相当する。
模擬環境ログ410は、模擬環境200への攻撃があった場合に模擬環境200で発生すると推定される挙動が示されるログである。
顧客環境ログ430は、顧客環境300への攻撃があった場合に顧客環境300で発生すると推定される挙動が示されるログである。顧客環境ログ430は、実在環境ログに相当する。
模擬環境200は、顧客環境300を模擬するものの、顧客環境300との間にはパラメータ値において差異が存在する。パラメータ値とは、通信アドレス、設定情報、コンピュータの識別子、ユーザの識別子、ファイルの識別子、パスワード等の情報システムを機能させるための設定値である。
模擬環境200で用いられるパラメータ値を模擬環境パラメータ値といい、顧客環境300で用いられるパラメータ値を顧客環境パラメータ値という。顧客環境パラメータ値は、実在環境パラメータ値に相当する。
なお、顧客環境ログ生成処理は、ログ取得処理及びログ変換処理に相当する。
図2の場合は、ログ処理装置100は、模擬環境ログ生成処理(ステップS110)で得られた模擬環境ログ410と、攻撃シナリオ生成処理(ステップS120)で得られた顧客環境攻撃シナリオ420を外部から取得する。そして、ログ処理装置100は、取得した顧客環境攻撃シナリオ420を用いて、取得した模擬環境ログ410を顧客環境ログ430に変換する。
なお、以下では、図1の構成を前提として説明を進めるが、以下の説明は、図2の構成にも適用される。
図3は、本実施の形態に係るログ処理装置100の機能構成例を示す。
また、図4は、本実施の形態に係るログ処理装置100のハードウェア構成例を示す。
先ず、図4を参照してログ処理装置100のハードウェア構成例を説明する。
ログ処理装置100は、ハードウェアとして、プロセッサ901、主記憶装置902、補助記憶装置903及び通信装置904を備える。
図3に示すように、ログ処理装置100は、機能構成として、模擬環境ログ生成部110、攻撃シナリオ生成部120及び顧客環境ログ生成部130を備える。模擬環境ログ生成部110、攻撃シナリオ生成部120及び顧客環境ログ生成部130の機能は、例えば、プログラムにより実現される。
補助記憶装置903には、模擬環境ログ生成部110、攻撃シナリオ生成部120及び顧客環境ログ生成部130の機能を実現するプログラムが記憶されている。
これらプログラムは、補助記憶装置903から主記憶装置902にロードされる。そして、プロセッサ901がこれらプログラムを実行して、後述する模擬環境ログ生成部110、攻撃シナリオ生成部120及び顧客環境ログ生成部130の動作を行う。
図4では、プロセッサ901が模擬環境ログ生成部110、攻撃シナリオ生成部120及び顧客環境ログ生成部130の機能を実現するプログラムを実行している状態を模式的に表している。
また、図3に示す模擬環境DB210、模擬環境攻撃シナリオDB510、攻撃ツールDB520及び顧客環境DB310は、主記憶装置902又は補助記憶装置903により実現される。
具体的には、模擬環境ログ生成部110は、模擬環境DB210と模擬環境攻撃シナリオDB510とログ構成情報530とを用いて模擬環境ログ410とステップ-ログ対応表440を生成する。
つまり、模擬環境ログ生成部110は、模擬環境DB210と模擬環境攻撃シナリオDB510とを用いて、サイバーキルチェーンの一連の攻撃活動を構成する複数の攻撃ステップの各々を模擬環境200に対して仮想的に実行する。換言すると、模擬環境ログ生成部110は、複数の攻撃ステップの各々が行われた場合の模擬環境200の状態をシミュレートする。そして、模擬環境ログ生成部110は、攻撃ステップごとに模擬環境ログ410を生成する。なお、より詳細には、模擬環境ログ生成部110は、後述する差分抽出ログ118に含まれる模擬環境パラメータ値をログ構成情報530を用いて抽象表現に置換して、模擬環境ログ410を生成する。以下では、攻撃ステップごとに生成される個々の模擬環境ログ及び複数の模擬環境ログの集合の両者を模擬環境ログ410と表記する。
また、模擬環境ログ生成部110は、攻撃ステップと模擬環境ログ410とを対応付けるステップ-ログ対応表440も生成する。
模擬環境ログ生成部110は、模擬環境パラメータ値を抽象表現に置換した後の模擬環境ログ410とステップ-ログ対応表440を顧客環境ログ生成部130に出力する。
なお、模擬環境ログ生成部110による模擬環境ログ410とステップ-ログ対応表440の生成方法は問わない。
例えば、模擬環境ログ生成部110は、模擬環境200上で攻撃シナリオの各攻撃ステップに対応する攻撃ツールを実行し、攻撃ツールの実行のタイミングを記録する。そして、模擬環境ログ生成部110は、記録したタイミングから一定期間のログを切り出して(正常ログを取り除いて)、攻撃ステップに対応するログを模擬環境ログ410として保存する。また、模擬環境ログ生成部110は、この作業の中で、攻撃ステップと対応するログの対応をステップ-ログ対応表440として生成する。
つまり、ログ構成情報530には、抽象表現への置換の対象となる模擬環境パラメータ値と、当該模擬環境パラメータ値の置換先の抽象表現とが予め定義されている。抽象表現への置換対象となる模擬環境パラメータ値は、例えば、ドメイン名、マシン名、ユーザ名、サーバ名、IP(Internet Protocol)アドレス等である。
ログ構成情報530には、例えば、後述する差分抽出ログ118内の発信元IPアドレスの具体的記述(模擬環境パラメータ値)を「#Src_IP#」という抽象表現(シンボル表記)に置換するとの置換規則が示される。また、ログ構成情報530には、差分抽出ログ118内の宛先ドメインの具体的記述(模擬環境パラメータ値)を「#Dest_domain#」という抽象表現(シンボル表記)に置換するとの置換規則が示される。
具体的には、攻撃シナリオ生成部120は顧客環境DB310と攻撃ツールDB520とを用いて顧客環境攻撃シナリオ420を生成する。攻撃シナリオ生成部120は、サイバーキルチェーンの攻撃ステップごとに顧客環境攻撃シナリオ420を生成する。つまり、攻撃シナリオ生成部120は、模擬環境攻撃シナリオの攻撃ステップと同じ攻撃ステップに対して顧客環境攻撃シナリオ420を生成する。
そして、攻撃シナリオ生成部120は、生成した顧客環境攻撃シナリオ420を顧客環境ログ生成部130に出力する。
なお、攻撃シナリオ生成部120による顧客環境攻撃シナリオ420の生成方法は問わない。攻撃シナリオ生成部120は、例えば、アタックツリー自動生成技術を用いて顧客環境攻撃シナリオ420を生成することができる。
つまり、顧客環境ログ生成部130は、顧客環境攻撃シナリオ420とステップ-ログ対応表440とログ構成情報530と指定パラメータ値540を用いて、模擬環境ログ410を変換して顧客環境ログ430を得る。
顧客環境ログ生成部130は、模擬環境ログ410の抽象表現を顧客環境パラメータ値に置換するとともに、模擬環境ログ410に指定パラメータ値540を追加する。
図5は、模擬環境ログ生成部110の内部構成例を示す。
つまり、攻撃ログ生成部111は、模擬環境攻撃シナリオDB510及び模擬環境DB210を用いて、模擬環境攻撃シナリオに沿った攻撃を模擬環境200に仮想的に実行する。そして、攻撃を受けた場合に模擬環境200で発生すると推定される挙動(被攻撃挙動)が示される攻撃ログ115を生成する。
そして、攻撃ログ生成部111は、攻撃ログ115を差分抽出部113に出力する。
攻撃ログ生成部111は、顧客環境攻撃シナリオに含まれる攻撃ステップごとに攻撃ログ115を生成する。対応情報116は、複数の攻撃ログ115の各々が複数の攻撃ステップのいずれの攻撃ステップに対応するかを示す。
攻撃ログ生成部111は、対応情報116も差分抽出部113に出力する。
つまり、正常ログ生成部112は、模擬環境200への攻撃が行われてない場合に模擬環境200で発生すると推定される挙動(正常挙動)が示される正常ログ117を生成する。正常ログ117に含まれる複数のレコードの各々には正常挙動が示される。
本実施の形態では、正常ログ生成部112は、正常ログ117として、プロキシログ、ファイルサーバログ及びADログを生成するものとする。プロキシログ、ファイルサーバログ及びADログの各々の間の時刻は同期しているものとする。
正常ログ生成部112は、生成した正常ログ117を差分抽出部113に出力する。
そして、差分抽出部113は、抽出したレコードの集合を差分抽出ログ118としてログ構成部114に出力する。
対応情報116は、攻撃ステップと攻撃ログ115との対応関係を示す。差分抽出部113は、対応情報116を修正して、攻撃ステップと差分抽出ログ118との対応関係を示す対応情報119を生成する。
また、ログ構成部114は、対応情報119を修正してステップ-ログ対応表440を生成する。
対応情報119は、攻撃ステップと差分抽出ログ118との対応関係を示す。ログ構成部114は、対応情報119を修正して、攻撃ステップと模擬環境ログ410との対応関係を示すステップ-ログ対応表440を生成する。
「ad_log」はADログを意味し、「proxy_log」はプロキシログを意味し、「file_log」はファイルサーバログを意味する。
ステップ-ログ対応表440には、攻撃ステップID、模擬環境ログID、ログ種別、模擬環境ログパス及び備考が含まれる。
攻撃ステップIDは、模擬環境攻撃シナリオの攻撃ステップを一意に識別可能な識別子である。
模擬環境ログIDは、模擬環境ログ410を一意に識別可能な識別子である。
ログ種別は、模擬環境ログ410の種別を表す。本実施の形態では、ログ種別としてADログ、プロキシログ及びファイルサーバログが存在する。
模擬環境ログパスは、模擬環境ログ410へのファイルパスを示す。
備考には、模擬環境ログ410の参考情報が示される。
図8は、顧客環境ログ生成部130の内部構成例を示す。
そして、ログ組合せ部131は、ステップ-ログ対応表440に従い、攻撃ステップごとに模擬環境ログ410を組み合わせる。つまり、ログ組合せ部131は、同じ攻撃ステップに対して2以上の模擬環境ログ410が生成されていれば、同じ攻撃ステップに対して生成された2以上の模擬環境ログ410を相互に関連付ける。図7の例では、「攻撃ステップID:attack_2_a」の攻撃ステップに対して、「ad_log_2_a」と「proxy_log_2_a」という2つの模擬環境ログ410が生成されている。このため、ログ組合せ部131は、これら2つの模擬環境ログ410を相互に関連付ける。
そして、ログ組合せ部131は組み合わせ後の模擬環境ログ410を組合せログ450としてパラメータ反映部132に出力する。なお、以下では、個々の組み合わせログ及び複数の組み合わせログの集合も組合せログ450と表記する。
ログ組合せ部131は、ログ取得部に相当する。また、ログ組合せ部131により行われる処理は、ログ取得処理に相当する。
そして、パラメータ反映部132は、ログ構成情報530を参照して、各組合せログ450に含まれる抽象表現を顧客環境攻撃シナリオ420に含まれる顧客環境パラメータ値に置換する。パラメータ反映部132は、例えば、発信元IPアドレスの抽象表現である「#Src_IP#」を、顧客環境パラメータ値である具体的なIPアドレス「x.x.x.x」に置換する。また、パラメータ反映部132は、例えば、宛先ドメインの抽象表現である「#Dest_domain#」を顧客環境パラメータ値である具体的なドメイン名「yyy.zzz.jp」に置換する。
組合せログ450内の抽象表現以外の記述と、顧客環境攻撃シナリオ420の顧客環境パラメータ値以外の記述は共通している。このため、パラメータ反映部132は、組合せログ450と顧客環境攻撃シナリオ420とを走査することで、組合せログ450内の抽象表現に対応する顧客環境パラメータ値を顧客環境攻撃シナリオ420から抽出することができる。
また、パラメータ反映部132は、組合せログ450に指定パラメータ値540を追加する。指定パラメータ値540は、例えば、攻撃ステップ間隔の値、ファイル名等である。
そして、パラメータ反映部132は、組合せログ450に含まれる抽象表現の顧客環境パラメータ値への置換と、指定パラメータ値540の模擬環境ログ410への追加とが行われた後の組合せログ450を顧客環境ログ430として出力する。
次に、図9を参照して、模擬環境ログ生成処理(ステップS110)の詳細を説明する。
なお、攻撃ログ生成部111は、模擬環境攻撃シナリオに記載の発信元IPアドレス、ユーザ名等の情報をもとに攻撃の主体からのイベントに絞った攻撃ログ115を生成してもよい。
また、攻撃ログ生成部111は、対応情報116も生成する。
そして、攻撃ログ生成部111は、生成した攻撃ログ115と対応情報116を差分抽出部113に出力する。
そして、正常ログ生成部112は正常ログ117を差分抽出部113に出力する。
また、ステップS111とステップS112とが並行して行われてもよい。
具体的には、差分抽出部113は、攻撃ログ115と正常ログ117とを比較し、タイムスタンプ、プロセスIDのような、処理の実行の度に変化する値を除いて、攻撃ログ115と正常ログ117との差分を抽出する。つまり、差分抽出部113は、攻撃ログ115の複数のレコードのうち正常ログ117のレコードと異なるレコードを抽出する。
そして、差分抽出部113は、抽出したレコードの集合を差分抽出ログ118としてログ構成部114に出力する。
また、差分抽出部113は、対応情報116から対応情報119を生成する。
ログ構成部114は、例えば、発信元IPアドレスの具体的記述(模擬環境パラメータ値)を「#Src_IP#」という抽象表現に変換する。また、ログ構成部114は、例えば、ADサーバ名の具体的記述(模擬環境パラメータ値)を「#AD_Server#」という抽象表現に置換する。
また、差分抽出ログ118において同じ模擬環境パラメータ値が繰り返し出現する場合は、ログ構成部114は、それぞれの模擬環境パラメータ値を同じ抽象表現に置換する。例えば、差分抽出ログ118において発信元IPアドレス「r.r.r.r」が繰り返し出現する場合は、それぞれを同じ抽象表現「#Src_IP#」に変換する。
また、差分抽出ログ118において同種のパラメータについて複数の異なる値が出現する場合は、同種のパラメータの出現順に変数に番号を付与する。例えば、差分抽出ログ118において発信元IPアドレスとして「r.r.r.r」、「s.s.s.s」及び「t.t.t.t」が出現する場合を想定する。この場合は、ログ構成部114は、「r.r.r.r」、「s.s.s.s」及び「t.t.t.t」の各々を「#Src_IP_1#」、「#Src_IP_2#」及び「#Src_IP_3#」と置換する。
つまり、ログ構成部114は、対応情報119を修正して、攻撃ステップと模擬環境ログ410との対応関係を示すステップ-ログ対応表440を生成する。
抽出すべき特徴は正常ログ117の種類ごとに予め定義されているものとする。差分抽出部113は、正常ログ117の種類ごとに、予め定義されている特徴を抽出する。
正常ログ117がプロキシログであれば、差分抽出部113は、例えば、リクエストURL(Uniform Resource Locator)、ステータスコード、受信サイズ及びユーザエージェントの特徴を正常ログ117(プロキシログ)から抽出する。
差分抽出部113は、攻撃ログ115から、同種の正常ログ117と同じ特徴を抽出する。例えば、攻撃ログ115がプロキシログであれば、差分抽出部113は、正常ログ117と同様に、例えば、リクエストURL、ステータスコード、受信サイズ及びユーザエージェントの特徴を攻撃ログ115(プロキシログ)から抽出する。
また、ステップS1131とステップS1132とが並行して行われてもよい。
ステップS1133は、同種の正常ログ117と攻撃ログ115との間で行われる。つまり、プロキシログの攻撃ログ115のレコードごとに、プロキシログの正常ログ117の各レコードとの間の類似度が計算される。
具体的には、差分抽出部113は、コサイン距離、ユークリッド距離等の手法により類似度を計算する。ドメインなどの文字列の場合は、差分抽出部113は、BoW(Bag of Words)などの手法で文字列を数値表現に変換した上で、類似度を計算する。
差分抽出部113は、ステップS1134を、攻撃ログ115の各レコードに対して行う。
つまり、ログ構成部114は、ログ構成情報530において抽象表現に置換することが定義されている模擬環境パラメータ値を定義パラメータ値として差分抽出ログ118から抽出する。
前述したように、差分抽出ログ118において同じ定義パラメータ値が繰り返し出現する場合は、ログ構成部114は、それぞれの定義パラメータ値を同じ抽象表現に変換する。また、差分抽出ログ118において同種のパラメータについて複数の異なる値が出現する場合は、同種のパラメータの出現順に変数に番号を付与する。
つまり、ログ構成部114は、ログ構成情報530に定義されていないが抽象表現に置換すべき模擬環境パラメータ値を非定義パラメータ値として差分抽出ログ118から抽出する。
なお、攻撃シナリオ生成処理(ステップS120)は、例えば、既存のアタックツリー自動生成技術を用いて実現可能であるため、詳細な説明は省略する。
具体的には、ログ組合せ部131は、ステップ-ログ対応表440に従い、攻撃ステップごとに模擬環境ログ410を組み合わせる。つまり、ログ組合せ部131は、同じ攻撃ステップに対して生成された2以上の模擬環境ログ410を相互に関連付ける。
具体的には、パラメータ反映部132は、ログ構成情報530を参照して、組合せログ450に含まれる抽象表現を顧客環境攻撃シナリオ420に含まれる顧客環境パラメータ値に置換する。
つまり、パラメータ反映部132は、ログ構成情報530を参照して組合せログ450の抽象表現を識別する。そして、パラメータ反映部132は、識別した抽象表現に対応する位置にある顧客環境攻撃シナリオ420の顧客環境パラメータ値を特定する。更に、パラメータ反映部132は、特定した顧客環境パラメータ値で組合せログ450の抽象表現を置換する。
パラメータ反映部132は、これら動作を全ての組合せログ450の全ての抽象表現に対して行う。
つまり、指定パラメータ値540によって攻撃ステップの間隔(攻撃ステップ間隔)が指定されている場合に、パラメータ反映部132は、タイムスタンプ(相対値)を調整し、組合せログ450を調整後のタイムスタンプで再構成する。
指定パラメータ値540では、攻撃ステップごとに、攻撃ステップ間隔としてランダム値(平均値及び標準偏差が指定)又は固定値が指定されている場合がある。パラメータ反映部132は、指定パラメータ値540に攻撃ステップ間隔としてランダム値が指定されている場合は、該当する攻撃ステップに対応するレコード間の時間間隔を、指定されている平均値及び標準偏差に基づく乱数によって調整する。また、パラメータ反映部132は、指定パラメータ値540に攻撃ステップ間隔として固定値が指定されている場合は、該当する攻撃ステップに対応するレコード間の時間間隔を、指定されている固定値に従って調整する。
指定パラメータ値540では、攻撃ステップごとの、宛先ドメイン、送信ファイル名、プロキシサーバ等が指定されている場合がある。これらが指定パラメータ値540で指定されている場合は、パラメータ反映部132は、組合せログ450の該当する項目を修正する。例えば、パラメータ反映部132は、攻撃ステップごとに、「#Dest_Domain#=malicious.com」、「#Upload_file#=confidential.doc」のように指定パラメータ値540で指定されている値を組合せログ450に反映させる。
模擬環境攻撃シナリオには、「初期侵入」、「内部調査」、「横展開」及び「機密送信」の各々での攻撃手順が記載されている。
模擬環境ログ410において、「T1」~「T13」はそれぞれタイムスタンプを示す。図15及び図16においても、「T1」~「T13」はそれぞれタイムスタンプを示す。模擬環境ログ410の「T1」~「T13」に対応する各行が、模擬環境ログ410のレコードである。
模擬環境ログ410では、模擬環境攻撃シナリオの攻撃ステップに対して模擬環境200で発生する挙動が各レコードに記載される。
また、図14では、模擬環境攻撃シナリオの各攻撃ステップに対応する模擬環境ログ410が各攻撃ステップの下方に示される。図14の例では、「初期侵入」に対して、模擬環境ログ生成部110はプロキシログを生成する。また、「内部調査」に対して、模擬環境ログ生成部110はIDS(Intrusion Detection System)ログを生成する。また、「横展開」に対して、模擬環境ログ生成部110はADログを生成する。また、「機密送信」に対して、模擬環境ログ生成部110はADログ、ファイルサーバログ及びプロキシログを生成する。
図14では、模擬環境ログ410において模擬環境パラメータ値は抽象表現に置換されている。図14では、具体的には、「SRC」、「DST1」、「DST2」等の下線を付している項目が抽象表現である。なお、図14では、一部の項目において、説明の簡明化のために「同ネットワーク帯のマシンM(IPアドレス)」、「ポートP」、「ファイルサーバFILE_SRV」、「ユーザUser1」のように説明のための文言を追加している。実際の運用では、これらも「M」、「P」、「FILE_SRV」、「ユーザUser1」のような説明のための文言がない抽象表現で記述される。
図15は、「初期侵入」、「内部調査」及び「横展開」についての顧客環境攻撃シナリオ420と模擬環境ログ410と顧客環境ログ430の例を示す。図16は、「機密送信」についての顧客環境攻撃シナリオ420と模擬環境ログ410と顧客環境ログ430の例を示す。
図15及び図16の模擬環境ログ410は、図14に示す模擬環境ログ410と同じである。
例えば、図15において、模擬環境ログ410の「SRC」は、顧客環境攻撃シナリオ420の「マシンSRC(10.74.5.2)」の「SRC」に対応する。このため、パラメータ反映部132は、模擬環境ログ410の「SRC」を顧客環境攻撃シナリオ420の「10.74.5.2」に置換している。同様に、模擬環境ログ410の「DST1」は顧客環境攻撃シナリオ420の「外部マシンDST1(ggg.com)」に対応する。このため、パラメータ反映部132は、模擬環境ログ410の「DST1」を顧客環境攻撃シナリオ420の「ggg.com」に置換している。
この結果、模擬環境ログ410の「T1」の「SRCからDST1へのHttpReq」は、顧客環境ログ430では、「10.74.5.2からggg.comへのHttpReq」に置換されている。パラメータ反映部132は、模擬環境ログ410の他の抽象表現についても、顧客環境攻撃シナリオ420の対応する記述に示される顧客環境パラメータ値に置換している。
なお、図15及び図16では、指定パラメータ値540の顧客環境ログ430への反映は省略されている。
以上のように、本実施の形態によれば、顧客環境に悪影響を及ぼすことなく、顧客環境が攻撃を受けたときの顧客環境の挙動が示される顧客環境ログ430を得ることができる。
このため、本実施の形態によれば、顧客環境ログ430を解析することで、顧客環境300をサイバー攻撃から防御するための攻撃検知システムを構築することができる。
本実施の形態では、主に実施の形態1との差異を説明する。
なお、以下で説明していない事項は、実施の形態1と同様である。
図17は、本実施の形態に係るログ処理装置100の機能構成例を示す。
図17では、図3と比較して、パラメータ判定部140、設定変更部150、模擬環境サンプルログ610、顧客環境サンプルログ620、差分パラメータ値情報630、顧客環境ログ統計情報640、設定情報650及び差分デフォルト情報660が追加されている。
以下では、主にパラメータ判定部140、設定変更部150、模擬環境サンプルログ610、顧客環境サンプルログ620、差分パラメータ値情報630、顧客環境ログ統計情報640、設定情報650及び差分デフォルト情報660について説明する。
なお、本実施の形態に係るログ処理装置100のハードウェア構成例は図4に示すとおりである。
パラメータ判定部140及び設定変更部150は、顧客環境ログ生成部130等と同様にプログラムで実現される。プロセッサ901がパラメータ判定部140及び設定変更部150の機能を実現するプログラムを実行して、以下に示すパラメータ判定部140及び設定変更部150の動作を行う。
なお、要求顧客環境パラメータ値は、要求実在環境パラメータ値に対応する。
より具体的には、パラメータ判定部140は、模擬環境サンプルログ610と顧客環境サンプルログ620とを取得する。そして、パラメータ判定部140は、模擬環境サンプルログ610には含まれないが顧客環境サンプルログ620に含まれるパラメータ値が存在するか否かを判定する。模擬環境サンプルログ610には含まれないが顧客環境サンプルログ620に含まれるパラメータ値が存在する場合は、パラメータ判定部140は、要求顧客環境パラメータ値に対応する抽象表現が模擬環境ログ410に記述されていないと判定する。そして、パラメータ判定部140は、模擬環境サンプルログ610には含まれないが顧客環境サンプルログ620に含まれるパラメータ値が、要求顧客環境パラメータ値として示される差分パラメータ値情報630を設定変更部150に出力する。
顧客環境サンプルログ620は、顧客環境300で得られるサンプルログである。顧客環境サンプルログ620は、例えば、正常ログ117に対応する、顧客環境300で過去に得られたログである。つまり、顧客環境サンプルログ620は、顧客環境300が正常に動作している場合に顧客環境300で生成されたログである。
パラメータ値がカテゴリデータである場合は、顧客環境ログ統計情報640には、統計値として、パラメータ値に含まれるユニークな文字列の出現頻度が示される。一方、パラメータ値が数値データである場合は、顧客環境ログ統計情報640には、統計値として、数値の平均値、分散等が示される。
つまり、設定変更部150は、差分パラメータ値情報630が出力された場合に、模擬環境ログ410の設定を変更する。より具体的には、設定変更部150は、顧客環境ログ統計情報640を参照して、模擬環境ログ410の設定を変更するための設定情報650を生成する。そして、設定変更部150は、生成した設定情報650を模擬環境ログ生成部110に出力する。設定情報650は、要求顧客環境パラメータ値に対応する抽象表現を模擬環境ログ410に記述するように模擬環境ログ生成部110に指示するコマンドである。
差分デフォルト情報660は、要求顧客環境パラメータ値の代替値を模擬環境ログ410に記述するよう顧客環境ログ生成部130に指示するコマンドである。差分デフォルト情報660には、顧客環境ログ統計情報640に示される統計値に基づいて算出された代替値が示される。
また、パラメータ値推定部141は、顧客環境サンプルログ620を解析し、顧客環境ログ430に含まれる顧客環境パラメータ値を推定する。そして、パラメータ値推定部141は、推定により得られた顧客環境パラメータ値を推定顧客環境パラメータ値680として差分抽出部142に出力する。
また、パラメータ値推定部141は、推定顧客環境パラメータ値680の統計値を算出し、算出した推定顧客環境パラメータ値680の統計値が示される顧客環境ログ統計情報640を生成する。そして、パラメータ値推定部141は、生成した顧客環境ログ統計情報640を設定変更部150に出力する。
パラメータ値推定部141は、前述したように、推定顧客環境パラメータ値680がカテゴリデータである場合は、統計値として、推定顧客環境パラメータ値680に含まれるユニークな文字列の出現頻度を算出する。一方、推定顧客環境パラメータ値680が数値データである場合は、パラメータ値推定部141は、統計値として、数値の平均値、分散等を算出する。
そして、いずれかの要求顧客環境パラメータ値に対応する抽象表現が模擬環境ログ生成部110では模擬環境ログ410に記述できない場合は、ログ調整部151は、設定不可情報690をデフォルト値算出部152に出力する。設定不可情報690には、不可パラメータ値が示される。不可パラメータ値は、模擬環境ログ生成部110では模擬環境ログ410に抽象表現を記述することができない要求顧客環境パラメータ値である。そして、ログ調整部151は、模擬環境ログ生成部110で模擬環境ログ410に抽象表現を記述することができる要求顧客環境パラメータ値について設定情報650を生成する。そして、ログ調整部151は、生成した設定情報650を模擬環境ログ生成部110に出力する。
一方、全ての要求顧客環境パラメータ値に対応する抽象表現を模擬環境ログ生成部110で模擬環境ログ410に記述することができる場合は、ログ調整部151は、全ての要求顧客環境パラメータ値について設定情報650を生成する。そして、ログ調整部151は、生成した設定情報650を模擬環境ログ生成部110に出力する。
なお、ログ調整部151は、設定情報650においてどのような形式で模擬環境ログ生成部110に指示を行ってもよい。
より具体的には、不可パラメータ値がカテゴリデータである場合は、デフォルト値算出部152は、顧客環境ログ統計情報640に示される、不可パラメータ値に含まれるユニークな文字列の出現頻度を用いて、不可パラメータ値の代替値を算出する。例えば、デフォルト値算出部152は、出現頻度の平均値と標準偏差から、「平均値±3×標準偏差」の頻度をランダムに選択する。そして、デフォルト値算出部152は、選択した頻度に対応するユニークな文字列を不可パラメータ値の代替値として設定する。例えば、デフォルト値算出部152は、図28に例示するログのフィールド単位(符号283で示す範囲)でカテゴリデータ(例えば、ドメイン)のユニークな文字列の出現頻度(qqqqqq.co.jp、gggggg.co.jp等の出現頻度)を算出する。そして、デフォルト値算出部152は、出現頻度順にカテゴリデータをソートし、中央値から前後X件までの範囲にあるカテゴリデータをランダムに選択する。なお、Xの値はあらかじめ決めておく。
また、不可パラメータ値が数値データである場合は、デフォルト値算出部152は、例えば、顧客環境ログ統計情報640に示される、不可パラメータ値の平均値と標準偏差から、「平均値±3×標準偏差」の数値をランダムに選択する。例えば、デフォルト値算出部152は、図28に例示するログのフィールド単位(符号281で示す範囲)で数値データの平均と標準偏差を算出し、その統計情報をもとに一様ランダムに代替値を生成する。
そして、デフォルト値算出部152は、選択した数値を不可パラメータ値の代替値として設定する。また、デフォルト値算出部152は、不可パラメータ値の代替値として、例えば固定値を設定してもよい。
デフォルト値算出部152は、差分デフォルト情報660を顧客環境ログ生成部130に出力する。
なお、デフォルト値算出部152は、差分デフォルト情報660においてどのような形式で顧客環境ログ生成部130に指示を行ってもよい。
図20では、図5と比較して、設定情報650が追加されている。設定情報650以外の要素は、図5に示したものと同じである。
本実施の形態では、ログ構成部114は、設定情報650で指示されている要求顧客環境パラメータ値に対応する抽象表現を差分抽出ログ118に追加する。この結果、模擬環境ログ410には、設定情報650で指示されている要求顧客環境パラメータ値に対応する抽象表現が記述される
図21では、図8と比較して、差分デフォルト情報660が追加されている。差分デフォルト情報660以外の要素は、図8に示したものと同じである。
本実施の形態では、パラメータ反映部132は、差分デフォルト情報660で指示されている不可パラメータ値の代替値を組合せログ450に追加する。この結果、顧客環境ログ430には、差分デフォルト情報660で指示されている不可パラメータ値の代替値が記述される。
図22は、本実施の形態に係るログ処理装置100の動作例を示す。
図22では、ステップS110~ステップS130の前に、ステップS141~ステップS152が行われる。
より具体的には、パラメータ値推定部141は、模擬環境サンプルログ610を解析し、模擬環境ログ410に含まれる模擬環境パラメータ値を推定する。そして、パラメータ値推定部141は、推定により得られた模擬環境パラメータ値を推定模擬環境パラメータ値670として差分抽出部142に出力する。
また、パラメータ値推定部141は、顧客環境サンプルログ620を解析し、顧客環境ログ430に含まれる顧客環境パラメータ値を推定する。そして、パラメータ値推定部141は、推定により得られた顧客環境パラメータ値を推定顧客環境パラメータ値680として差分抽出部142に出力する。
また、パラメータ値推定部141は、推定顧客環境パラメータ値680の統計値を算出し、算出した推定顧客環境パラメータ値680の統計値が示される顧客環境ログ統計情報640を生成する。そして、パラメータ値推定部141は、生成した顧客環境ログ統計情報640を設定変更部150に出力する。
より具体的には、差分抽出部142は、推定模擬環境パラメータ値670と推定顧客環境パラメータ値680を比較する。そして、パラメータ判定部140は、推定模擬環境パラメータ値670と異なる推定顧客環境パラメータ値680(例えば、リファラー、ステータスコード等)が存在する場合に、当該推定顧客環境パラメータ値680を要求顧客環境パラメータ値として抽出する。そして、パラメータ判定部140は、抽出した要求顧客環境パラメータ値が示される差分パラメータ値情報630を設定変更部150に出力する。
より具体的には、ログ調整部151は、差分パラメータ値情報630に示される全ての要求顧客環境パラメータ値に対応する抽象表現が模擬環境ログ生成部110により模擬環境ログ410に記述できるか否かを判定する。
そして、いずれかの要求顧客環境パラメータ値に対応する抽象表現が模擬環境ログ生成部110では模擬環境ログ410に記述できない場合は、ログ調整部151は、設定不可情報690をデフォルト値算出部152に出力する。そして、ログ調整部151は、模擬環境ログ生成部110で模擬環境ログ410に抽象表現を記述することができる要求顧客環境パラメータ値について設定情報650を生成する。そして、ログ調整部151は、生成した設定情報650を模擬環境ログ生成部110に出力する。
一方、全ての要求顧客環境パラメータ値に対応する抽象表現を模擬環境ログ生成部110で模擬環境ログ410に記述することができる場合は、ログ調整部151は、全ての要求顧客環境パラメータ値について設定情報650を生成する。そして、ログ調整部151は、生成した設定情報650を模擬環境ログ生成部110に出力する。
より具体的には、デフォルト値算出部152は、顧客環境ログ統計情報640を取得する。また、デフォルト値算出部152は、ログ調整部151から設定不可情報690を取得する。そして、デフォルト値算出部152は、顧客環境ログ統計情報640に示される統計値に基づき不可パラメータ値の代替値を算出する。そして、デフォルト値算出部152は、算出した代替値が示される差分デフォルト情報660を生成する。
そして、デフォルト値算出部152は、差分デフォルト情報660を顧客環境ログ生成部130に出力する。
ログ調整部151から設定情報650が出力されている場合は、模擬環境ログ生成部110は、設定情報650で示される要求顧客環境パラメータ値に対応する抽象表現が含まれるようにして模擬環境ログ410を生成する。
その他の模擬環境ログ生成部110の動作は、実施の形態1に示した通りである。
デフォルト値算出部152から差分デフォルト情報660が出力されている場合は、顧客環境ログ生成部130は、差分デフォルト情報660で示される不可パラメータ値の代替値が含まれるようにして顧客環境ログ430を生成する。
その他の顧客環境ログ生成部130の動作は、実施の形態1に示した通りである。
なお、以下では、パラメータ判定部140が、模擬環境サンプルログ610において模擬環境パラメータ値を推定する例を説明する。しかしながら、以下の説明で模擬環境サンプルログ610を顧客環境サンプルログ620に、模擬環境パラメータ値を顧客環境パラメータ値に読み替えることで、パラメータ判定部140は、同様の手順にて、顧客環境サンプルログ620において顧客環境パラメータ値を推定することができる。
以下では、顧客環境パラメータ値の推定方法を説明する。
より具体的には、パラメータ判定部140は、以下により、検索及び推定を行う。
2.パラメータ判定部140は、セパレータを目印にフィールドを抽出する。
3.パラメータ判定部140は、ログの全てのレコードから同じ列(フィールド)を抽出する。例えば、図28に例示するログにおいて、符号231の範囲、符号282の範囲及び符号283の範囲の各々を、同じ列として抽出する。
4.同じ列が数字のみから構成される場合は、パラメータ判定部140は、該当する列のデータを数値データとして扱う。それ以外の場合は、パラメータ判定部140は、該当する列のデータをカテゴリデータとして扱う。
5.パラメータ判定部140は、カテゴリデータの場合、単語の頻度を抽出し、BoWなどの手法で文字列を数値表現に変換する。例えば、パラメータ判定部140は、「http://yyyyyy.co.jp」を、{http:1,yyyyyy:1,co:1,jp:1}により、(11110000)に変換する。
6.次に、パラメータ判定部140は、変換により得られた数値表現(カテゴリデータの場合)及び数値データを同じ列単位(符号283の範囲)でマージして機械学習に入力し、列(フィールド)の種類を推定する。
なお、あらかじめ、フィールド(パラメータ値)が既知のログの列ごとのデータを使って、列の種類を分類する分類器を学習しておく。
受信サイズ等の数値データが記載されているレコードの場合は、パラメータ判定部140は、適宜データの標準化を行って特徴を抽出する。
以上のように、本実施の形態によれば、模擬環境ログ410には含まれないが、顧客環境ログ430に含ませることが要求されるパラメータ値(要求顧客環境パラメータ値)を顧客環境ログ430に追加することができる。
このため、本実施の形態によれば、より実態に近い顧客環境のログを得ることができ、実施の形態1に比べてより有効な攻撃検知システムを構築することができる。
しかし、実施の形態1で説明したように、抽象表現ではなく模擬環境パラメータ値が模擬環境ログ410に記述されている場合は、パラメータ判定部140は、要求顧客環境パラメータ値に対応する模擬環境パラメータ値が模擬環境ログ410に記述されているか否かを判定する。
この場合は、模擬環境ログ生成部110は、抽象表現ではなく、要求顧客環境パラメータ値に対応する模擬環境パラメータ値を模擬環境ログ410に追加する。
しかし、顧客環境ログ生成部130は、代替値ではなく、不可パラメータ値を組合せログ450に追加してもよい。
本実施の形態では、主に実施の形態1との差異を説明する。
なお、以下で説明していない事項は、実施の形態1と同様である。
図23は、本実施の形態に係るログ処理装置100の機能構成例を示す。
図23では、図3と比較して、ログ統合部160、顧客環境正常ログ710、統合規則情報720及び顧客環境最終ログ750が追加されている。
以下では、主にログ統合部160、顧客環境正常ログ710、統合規則情報720及び顧客環境統合ログ730について説明する。
なお、本実施の形態に係るログ処理装置100のハードウェア構成例は図4に示すとおりである。
ログ統合部160は、顧客環境ログ生成部130等と同様にプログラムで実現される。プロセッサ901がログ統合部160の機能を実現するプログラムを実行して、以下に示すログ統合部160の動作を行う。
顧客環境正常ログ710は、顧客環境300への攻撃が行われていない場合に顧客環境300で発生すると推定される挙動が示される。顧客環境正常ログ710は、実在環境正常ログに相当する。
統合規則情報720には、ログ統合部160が顧客環境ログ430と顧客環境正常ログ710とを統合するための規則が示される。
統合規則情報720には、例えば、顧客環境正常ログ710のフォーマットに合わせて顧客環境ログ430のフォーマットを変換するとの規則が示される。
顧客環境統合ログ730には、顧客環境300が攻撃を受けた場合のログである顧客環境ログ430が含まれている。このため、顧客環境統合ログ730には、いずれかのオブジェクトが破壊される事象である破壊事象が記述されている。一方で、顧客環境統合ログ730には、顧客環境300が攻撃を受けていない場合のログである顧客環境正常ログ710も含まれている。このため、破壊事象の発生後の顧客環境統合ログ730の記述のうち、顧客環境正常ログ710の部分では、破壊事象の対象のオブジェクト(以下、破壊オブジェクトという)が破壊されていないことを前提とする記述になっている。つまり、顧客環境統合ログ730には、破壊事象が発生して破壊オブジェクトが破壊された後でも破壊オブジェクトが破壊されていない旨の記述が含まれている。
ログ統合部160は、破壊事象の発生後の顧客環境統合ログ730の記述を破壊オブジェクトが破壊されていることを前提とする記述に変更する。
なお、破壊オブジェクトは破壊システム構成要素に対応する。
顧客環境最終ログ750は、例えば、攻撃検知システムを構築する際の機械学習において学習データとして用いられる。
統合処理部161は、例えば、顧客環境正常ログ710のフォーマットに合わせて顧客環境ログ430のフォーマットを変換した後、顧客環境正常ログ710と顧客環境ログ430を統合する。
統合処理部161は、時系列に沿って顧客環境ログ430と顧客環境正常ログ710を統合する。
そして、統合処理部161は、統合により得られた顧客環境統合ログ730を破壊情報生成部162とレコード修正部163に出力する。
図27は、破壊情報740の例を示す。図27の詳細は後述する。
そして、レコード修正部163は、レコード修正後の顧客環境統合ログ730を顧客環境最終ログ750として出力する。
図24は、本実施の形態に係るログ処理装置100の動作例を示す。
具体的には、図24は、ログ統合部160の動作例を示す。
先ず、破壊情報生成部162は、顧客環境統合ログ730を解析し、顧客環境統合ログ730から破壊事象を抽出する。
具体的には、破壊情報生成部162は、複数の顧客環境統合ログ730のうち、破壊が行われる攻撃ステップに対応する顧客環境統合ログ730を選択し、選択した顧客環境統合ログ730を解析する。破壊が行われる攻撃ステップは、例えば、マシンクラッシュ、ファイル削除、パスワード変更、ファイル暗号化等の攻撃ステップである。
そして、破壊情報生成部162は、選択した顧客環境統合ログ730内で顧客環境300のいずれかのオブジェクトを破壊する破壊行為を破壊事象として抽出する。
破壊事象として抽出する破壊行為は事前に例えばログ処理装置100の管理者が定義しておく。
そして、破壊情報生成部162は、例えば、図27に示す破壊情報740を生成する。
「破壊タイプ」がファイル削除の場合は、「破壊オブジェクトの識別情報」には、削除されたファイルのファイルパスが示される。「破壊タイプ」がマシンクラッシュの場合は、「破壊オブジェクトの識別情報」には、クラッシュしたマシンのIPアドレスが示される。また、「破壊タイプ」がパスワード変更の場合は、「破壊オブジェクトの識別情報」には、パスワードが変更されたユーザのIDが示される。
ステップS163の詳細は後述する。
レコード修正部163は、図26の処理を、図27の破壊情報240のレコードごとに行う。
復旧時刻は、破壊情報740の「破壊時刻」に示される時刻に「復旧時間」に示される時間を加算して得られる時刻である。
なお、「復旧時間」が空欄になっている場合は、レコード修正部163は、破壊時刻の後の時刻の全てのレコードを選択する。
つまり、レコード修正部163は、ステップS1631で選択したレコードのうち、破壊情報740の「破壊オブジェクトの識別情報」で特定される破壊オブジェクトが挙動の主体であるレコードを顧客環境統合ログ730から削除する。破壊時刻から復旧時刻の間は、破壊オブジェクトが主体の挙動は発生し得ないため、レコード修正部163は、該当するレコードを削除する。
つまり、レコード修正部163は、ステップS1631で選択したレコードのうち、破壊情報740の「破壊オブジェクトの識別情報」で特定される破壊オブジェクトが挙動の客体であるレコードをエラー事象のレコードに修正する。破壊時刻から復旧時刻の間は、破壊オブジェクトが客体の挙動はエラー終了となるため、レコード修正部163は、該当するレコードをエラー事象のレコードに修正する。
レコード修正部163は、具体的には、該当するレコードを、破壊オブジェクトへのアクセス、破壊オブジェクトを対象とする認証処理等がエラー終了したことを示すレコードに修正する。
例えば、レコード修正部163は、当該PCが開始した通信が示されるレコードを削除する。
例えば、レコード修正部163は、当該ファイルへのアクセスが成功したことが示されるレコードを、アクセスエラーが発生したことを示すレコードに変更する。
以上のように、本実施の形態によれば、破壊事象の発生の後の顧客環境統合ログ730の記述を修正することができる。
このため、本実施の形態によれば、より実態に近い顧客環境のログを得ることができ、実施の形態1に比べてより有効な攻撃検知システムを構築することができる。
本実施の形態では、主に実施の形態1及び実施の形態2との差異を説明する。
なお、以下で説明していない事項は、実施の形態1及び実施の形態2と同様である。
図29は、本実施の形態に係るログ処理装置100の機能構成例を示す。
図29では、図3と比較して、パラメータ判定部140、記述指示部170、模擬環境サンプルログ610、顧客環境サンプルログ620、差分パラメータ値情報630、顧客環境ログ統計情報640及び差分デフォルト情報800が追加されている。
図29において、パラメータ判定部140、模擬環境サンプルログ610、顧客環境サンプルログ620、差分パラメータ値情報630及び顧客環境ログ統計情報640は、実施の形態2で説明したものと同様である。
なお、本実施の形態では、パラメータ判定部140は、差分パラメータ値情報630及び顧客環境ログ統計情報640を記述指示部170に出力する。
また、本実施の形態では、模擬環境ログ生成部110は、差分デフォルト情報800に従って、要求顧客環境パラメータ値の代替値を模擬環境ログ410に記述する。
本実施の形態に係るログ処理装置100のハードウェア構成例は図4に示すとおりである。
記述指示部170は、顧客環境ログ生成部130等と同様にプログラムで実現される。プロセッサ901が記述指示部170の機能を実現するプログラムを実行して、以下に示す記述指示部170の動作を行う。
記述指示部170は、差分デフォルト情報800を模擬環境ログ生成部110に出力することにより、要求顧客環境パラメータ値の代替値を模擬環境ログ410に記述するように模擬環境ログ生成部110に指示する。
記述指示部170は、差分パラメータ値情報630と顧客環境ログ統計情報640から差分デフォルト情報800を生成する。
記述指示部170は、パラメータ判定部140から、差分パラメータ値情報630と顧客環境ログ統計情報640を取得する。実施の形態2で説明したように、差分パラメータ値情報630には、模擬環境サンプルログ610には含まれないが顧客環境サンプルログ620に含まれるパラメータ値が要求顧客環境パラメータ値として示される。また、顧客環境ログ統計情報640には、実施の形態2で説明したように、顧客環境サンプルログ620に含まれるパラメータ値の統計値が示される。
より具体的には、要求顧客環境パラメータ値がカテゴリデータである場合は、記述指示部170は、顧客環境ログ統計情報640に示される、要求顧客環境パラメータ値に含まれるユニークな文字列の出現頻度を用いて、代替値を算出する。例えば、記述指示部170は、出現頻度の平均値と標準偏差から、「平均値±3×標準偏差」の頻度をランダムに選択する。
そして、記述指示部170は、選択した頻度に対応するユニークな文字列を代替値として設定する。
より具体的には、記述指示部170は、実施の形態2において図28を参照して説明した、不可パラメータ値がカテゴリデータである場合の代替値の設定手順と同様の手順で、要求顧客環境パラメータ値の代替値を設定する。
また、要求顧客環境パラメータ値が数値データである場合は、記述指示部170は、例えば、顧客環境ログ統計情報640に示される、要求顧客環境パラメータ値の平均値と標準偏差から、「平均値±3×標準偏差」の数値をランダムに選択する。
そして、記述指示部170は、選択した数値を要求顧客環境パラメータ値の代替値として設定する。また、記述指示部170は、要求顧客環境パラメータ値の代替値として、例えば固定値を設定してもよい。
より具体的には、記述指示部170は、実施の形態2において図28を参照して説明した、不可パラメータ値が数値データである場合の代替値の設定手順と同様の手順で、要求顧客環境パラメータ値の代替値を設定する。
記述指示部170は、差分デフォルト情報800を模擬環境ログ生成部110に出力する。
なお、記述指示部170は、差分デフォルト情報800においてどのような形式で模擬環境ログ生成部110に指示を行ってもよい。
以上のように、本実施の形態によれば、模擬環境ログ410には含まれないが、顧客環境ログ430に含ませることが要求されるパラメータ値(要求顧客環境パラメータ値)の代替値を模擬環境ログ410に追加することができる。
このため、本実施の形態によれば、より実態に近い顧客環境のログを得ることができ、実施の形態1に比べてより有効な攻撃検知システムを構築することができる。
あるいは、これらの実施の形態のうち、1つを部分的に実施しても構わない。
あるいは、これらの実施の形態のうち、2つ以上を部分的に組み合わせて実施しても構わない。
また、これらの実施の形態に記載された構成及び手順を必要に応じて変更してもよい。
最後に、ログ処理装置100のハードウェア構成の補足説明を行う。
図4に示すプロセッサ901は、プロセッシングを行うIC(Integrated Circuit)である。
プロセッサ901は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)等である。
図4に示す主記憶装置902は、RAM(Random Access Memory)である。
図4に示す補助記憶装置903は、ROM(Read Only Memory)、フラッシュメモリ、HDD(Hard Disk Drive)等である。
図4に示す通信装置904は、データの通信処理を実行する電子回路である。
通信装置904は、例えば、通信チップ又はNIC(Network Interface Card)である。
そして、OSの少なくとも一部がプロセッサ901により実行される。
プロセッサ901はOSの少なくとも一部を実行しながら、模擬環境ログ生成部110、攻撃シナリオ生成部120、顧客環境ログ生成部130、パラメータ判定部140、設定変更部150、ログ統合部160及び記述指示部170の機能を実現するプログラムを実行する。
プロセッサ901がOSを実行することで、タスク管理、メモリ管理、ファイル管理、通信制御等が行われる。
また、模擬環境ログ生成部110、攻撃シナリオ生成部120、顧客環境ログ生成部130、パラメータ判定部140、設定変更部150、ログ統合部160及び記述指示部170の処理の結果を示す情報、データ、信号値及び変数値の少なくともいずれかが、主記憶装置902、補助記憶装置903、プロセッサ901内のレジスタ及びキャッシュメモリの少なくともいずれかに記憶される。
また、模擬環境ログ生成部110、攻撃シナリオ生成部120、顧客環境ログ生成部130、パラメータ判定部140、設定変更部150、ログ統合部160及び記述指示部170の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記録媒体に格納されていてもよい。そして、模擬環境ログ生成部110、攻撃シナリオ生成部120、顧客環境ログ生成部130、パラメータ判定部140、設定変更部150、ログ統合部160及び記述指示部170の機能を実現するプログラムが格納された可搬記録媒体を流通させてもよい。
また、ログ処理装置100は、処理回路により実現されてもよい。処理回路は、例えば、ロジックIC(Integrated Circuit)、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)である。
この場合は、模擬環境ログ生成部110、攻撃シナリオ生成部120、顧客環境ログ生成部130、パラメータ判定部140、設定変更部150、ログ統合部160及び記述指示部170は、それぞれ処理回路の一部として実現される。
なお、本明細書では、プロセッサと処理回路との上位概念を、「プロセッシングサーキットリー」という。
つまり、プロセッサと処理回路とは、それぞれ「プロセッシングサーキットリー」の具体例である。
Claims (15)
- 実在するシステム環境である実在環境を模擬するが前記実在環境との間に差異が存在するシステム環境である模擬環境への攻撃が行われた場合に前記模擬環境で発生すると推定される挙動が示されるログである模擬環境ログを取得するログ取得部と、
前記模擬環境と前記実在環境との間の差異を反映させて、前記模擬環境ログを、前記模擬環境への攻撃に対応する攻撃が前記実在環境に行われた場合に前記実在環境で発生すると推定される挙動が示されるログである実在環境ログに変換するログ変換部とを有するログ処理装置。 - 前記ログ変換部は、
前記模擬環境で用いられるパラメータ値である模擬環境パラメータ値と前記実在環境で用いられるパラメータ値である実在環境パラメータ値との間の差異を反映させて、前記模擬環境ログを前記実在環境ログに変換する請求項1に記載のログ処理装置。 - 前記ログ取得部は、
前記模擬環境パラメータ値及び前記模擬環境パラメータ値の抽象表現のいずれかが記述されている前記模擬環境ログを取得し、
前記ログ変換部は、
前記模擬環境ログに記述されている前記模擬環境パラメータ値及び前記抽象表現のいずれかを前記実在環境パラメータ値に置換して前記模擬環境ログを前記実在環境ログに変換する請求項2に記載のログ処理装置。 - 前記ログ取得部は、
前記模擬環境への攻撃に含まれる複数の攻撃ステップに対して生成された複数のログを複数の模擬環境ログとして取得し、
前記ログ変換部は、
前記複数の模擬環境ログを複数の実在環境ログに変換する請求項1に記載のログ処理装置。 - 前記ログ取得部は、
前記模擬環境で用いられるパラメータ値である模擬環境パラメータ値及び前記模擬環境パラメータ値の抽象表現のいずれかが各々に記述されている複数の模擬環境ログを取得し、
前記ログ変換部は、
各模擬環境ログに記述されている前記模擬環境パラメータ値及び前記抽象表現のいずれかを前記実在環境で用いられるパラメータ値である実在環境パラメータ値に置換して、前記複数の模擬環境ログを前記複数の実在環境ログに変換する請求項4に記載のログ処理装置。 - 前記ログ取得部は、
前記模擬環境への攻撃が行われた場合に前記模擬環境で発生すると推定される挙動である被攻撃挙動に前記模擬環境への攻撃が行われていない場合に前記模擬環境で発生すると推定される挙動である正常挙動が含まれる場合に、前記被攻撃挙動から前記正常挙動が除外された後の挙動が示されるログを前記模擬環境ログとして取得する請求項1に記載のログ処理装置。 - 前記ログ処理装置は、更に、
前記模擬環境への攻撃が行われた場合に前記模擬環境で発生すると推定される挙動である被攻撃挙動に前記模擬環境への攻撃が行われていない場合に前記模擬環境で発生すると推定される挙動である正常挙動が含まれる場合に、前記被攻撃挙動から前記正常挙動を除外し、前記被攻撃挙動から前記正常挙動が除外された後の挙動が示されるログを前記模擬環境ログとして生成する模擬環境ログ生成部を有し、
前記ログ取得部は、
前記模擬環境ログ生成部により生成された前記模擬環境ログを取得する請求項1に記載のログ処理装置。 - 前記ログ変換部は、
前記実在環境パラメータ値以外のパラメータ値が指定パラメータ値として指定された場合に、前記指定パラメータ値を前記模擬環境ログに反映させる請求項2に記載のログ処理装置。 - 前記ログ処理装置は、更に、
前記実在環境ログに記述されていることが要求される前記実在環境パラメータ値である要求実在環境パラメータ値に対応する前記模擬環境パラメータ値及び前記抽象表現のいずれかが前記模擬環境ログに記述されているか否かを判定するパラメータ判定部と、
前記パラメータ判定部により前記要求実在環境パラメータ値に対応する前記模擬環境パラメータ値及び前記抽象表現のいずれかが前記模擬環境ログに記述されていないと判定された場合に、前記要求実在環境パラメータ値に対応する前記模擬環境パラメータ値及び前記抽象表現のいずれかが前記模擬環境ログに記述されるように前記模擬環境ログの設定を変更する設定変更部とを有する請求項3に記載のログ処理装置。 - 前記ログ変換部は、
前記設定変更部による前記模擬環境ログの設定変更では前記要求実在環境パラメータ値に対応する前記模擬環境パラメータ値及び前記抽象表現のいずれかが前記模擬環境ログに記述されない場合に、前記模擬環境ログに前記要求実在環境パラメータ値及び前記要求実在環境パラメータ値の代替値のいずれかを追加する請求項9に記載のログ処理装置。 - 前記ログ処理装置は、更に、
前記実在環境ログと、前記実在環境への攻撃が行われていない場合に前記実在環境で発生すると推定される挙動が示される実在環境正常ログとを統合するログ統合部を有する請求項1に記載のログ処理装置。 - 前記実在環境には、複数のシステム構成要素が含まれており、
前記ログ統合部は、
前記複数のシステム構成要素のうちのいずれかのシステム構成要素が破壊される事象である破壊事象が前記実在環境ログと前記実在環境正常ログとの統合により得られた実在環境統合ログに記述され、前記破壊事象の発生の後の前記実在環境統合ログの記述が前記破壊事象の対象のシステム構成要素である破壊システム構成要素が破壊されていないことを前提とする記述である場合に、前記破壊事象の発生後の前記実在環境統合ログの記述を前記破壊システム構成要素が破壊されていることを前提とする記述に変更する請求項11に記載のログ処理装置。 - 前記ログ処理装置は、更に、
前記実在環境ログに記述されていることが要求される前記実在環境パラメータ値である要求実在環境パラメータ値に対応する前記模擬環境パラメータ値及び前記抽象表現のいずれかが前記模擬環境ログに記述されているか否かを判定するパラメータ判定部と、
前記パラメータ判定部により前記要求実在環境パラメータ値に対応する前記模擬環境パラメータ値及び前記抽象表現のいずれかが前記模擬環境ログに記述されていないと判定された場合に、前記要求実在環境パラメータ値の代替値を前記模擬環境ログに記述するように前記模擬環境ログの生成元に指示する記述指示部とを有する請求項3に記載のログ処理装置。 - コンピュータが、実在するシステム環境である実在環境を模擬するが前記実在環境との間に差異が存在するシステム環境である模擬環境への攻撃が行われた場合に前記模擬環境で発生すると推定される挙動が示されるログである模擬環境ログを取得し、
前記コンピュータが、前記模擬環境と前記実在環境との間の差異を反映させて、前記模擬環境ログを、前記模擬環境への攻撃に対応する攻撃が前記実在環境に行われた場合に前記実在環境で発生すると推定される挙動が示されるログである実在環境ログに変換するログ処理方法。 - 実在するシステム環境である実在環境を模擬するが前記実在環境との間に差異が存在するシステム環境である模擬環境への攻撃が行われた場合に前記模擬環境で発生すると推定される挙動が示されるログである模擬環境ログを取得するログ取得処理と、
前記模擬環境と前記実在環境との間の差異を反映させて、前記模擬環境ログを、前記模擬環境への攻撃に対応する攻撃が前記実在環境に行われた場合に前記実在環境で発生すると推定される挙動が示されるログである実在環境ログに変換するログ変換処理とをコンピュータに実行させるログ処理プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2021/034631 WO2023047467A1 (ja) | 2021-09-21 | 2021-09-21 | ログ処理装置、ログ処理方法及びログ処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2023047467A1 JPWO2023047467A1 (ja) | 2023-03-30 |
JP7341380B2 true JP7341380B2 (ja) | 2023-09-08 |
Family
ID=85720262
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023540850A Active JP7341380B2 (ja) | 2021-09-21 | 2021-09-21 | ログ処理装置、ログ処理方法及びログ処理プログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240220604A1 (ja) |
JP (1) | JP7341380B2 (ja) |
CN (1) | CN117940922A (ja) |
WO (1) | WO2023047467A1 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130111540A1 (en) | 2011-10-28 | 2013-05-02 | Jason Allen Sabin | Cloud protection techniques |
US20210042631A1 (en) | 2019-08-06 | 2021-02-11 | International Business Machines Corporation | Techniques for Cyber-Attack Event Log Fabrication |
-
2021
- 2021-09-21 CN CN202180102377.6A patent/CN117940922A/zh active Pending
- 2021-09-21 WO PCT/JP2021/034631 patent/WO2023047467A1/ja active Application Filing
- 2021-09-21 JP JP2023540850A patent/JP7341380B2/ja active Active
-
2024
- 2024-01-26 US US18/423,974 patent/US20240220604A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130111540A1 (en) | 2011-10-28 | 2013-05-02 | Jason Allen Sabin | Cloud protection techniques |
US20210042631A1 (en) | 2019-08-06 | 2021-02-11 | International Business Machines Corporation | Techniques for Cyber-Attack Event Log Fabrication |
Non-Patent Citations (1)
Title |
---|
山本 匠,検知技術回避を目的とする攻撃のシミュレート手法の提案,2017年 暗号と情報セキュリティシンポジウム(SCIS2017)予稿集,2017年01月24日,pages 1-7 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2023047467A1 (ja) | 2023-03-30 |
WO2023047467A1 (ja) | 2023-03-30 |
US20240220604A1 (en) | 2024-07-04 |
CN117940922A (zh) | 2024-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xie et al. | Pagoda: A hybrid approach to enable efficient real-time provenance based intrusion detection in big data environments | |
CN108156131B (zh) | Webshell检测方法、电子设备和计算机存储介质 | |
JP2022527511A (ja) | サイバーセキュリティ・イベントについての時間関係を推測すること | |
Berrueta et al. | Open repository for the evaluation of ransomware detection tools | |
US11170113B2 (en) | Management of security vulnerabilities | |
US20150047034A1 (en) | Composite analysis of executable content across enterprise network | |
KR101676366B1 (ko) | 사이버 공격 대응을 위한 악성코드 침해 경로 및 행위 추적을 수행하는 침해 공격 추적 시스템 및 방법 | |
Damshenas et al. | A survey on digital forensics trends | |
JP7024720B2 (ja) | マルウェア解析装置、マルウェア解析方法、及び、マルウェア解析プログラム | |
CN114003903B (zh) | 一种网络攻击追踪溯源方法及装置 | |
CN107409134B (zh) | 法证分析方法 | |
Vidyarthi et al. | Static malware analysis to identify ransomware properties | |
CN109347808B (zh) | 一种基于用户群行为活动的安全分析方法 | |
Pont et al. | A roadmap for improving the impact of anti-ransomware research | |
CN111183620B (zh) | 入侵调查 | |
CN112905996A (zh) | 基于多维度数据关联分析的信息安全溯源系统及方法 | |
CN114844689B (zh) | 一种基于有限状态机的网站逻辑漏洞检测方法及系统 | |
Salih et al. | Digital forensic tools: A literature review | |
Luz et al. | Data preprocessing and feature extraction for phishing URL detection | |
JP7341380B2 (ja) | ログ処理装置、ログ処理方法及びログ処理プログラム | |
JP6395986B2 (ja) | 鍵生成源特定装置、鍵生成源特定方法及び鍵生成源特定プログラム | |
CN111970272A (zh) | 一种apt攻击操作识别方法 | |
Apoorva et al. | Analysis of uniform resource locator using boosting algorithms for forensic purpose | |
KR20190070583A (ko) | 사이버 위협 정보에 대한 통합 표현 규격 데이터 생성 방법 및 장치 | |
JP7016459B2 (ja) | アノマリ検知装置、アノマリ検知方法及びアノマリ検知プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230703 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20230703 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230801 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230829 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7341380 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |