JP7713146B2 - 異常検知装置、異常検知方法、および、異常検知プログラム - Google Patents
異常検知装置、異常検知方法、および、異常検知プログラムInfo
- Publication number
- JP7713146B2 JP7713146B2 JP2023567408A JP2023567408A JP7713146B2 JP 7713146 B2 JP7713146 B2 JP 7713146B2 JP 2023567408 A JP2023567408 A JP 2023567408A JP 2023567408 A JP2023567408 A JP 2023567408A JP 7713146 B2 JP7713146 B2 JP 7713146B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- anomaly
- normal
- pseudo
- anomaly detection
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0245—Filtering by information in the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/24—Testing correct operation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/24—Testing correct operation
- H04L1/241—Testing correct operation using pseudo-errors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、異常検知装置、異常検知方法、および、異常検知プログラムに関する。
従来、産業系・ビル系のネットワーク制御システムで用いられる通信に対する異常検知システムや侵入検知システムに注目が集まっている。制御系の通信は、例えば、温度の設定値が一桁変わってしまうだけでも重大な事故につながるおそれがある。このため、通信内容(ペイロード)の1byteの不正な書き換えも見逃さずに検知出来る必要がある。したがって、産業系・ビル系のネットワーク制御システムを対象とした異常検知システムでは、ペイロード内容の精緻な分析が必要不可欠である。
このような分析を行う技術として、例えば、BERT(Bidirectional Encoder Representations from Transformers)等の自然言語処理技術をパケット分析に応用することで、任意のプロトコルのペイロードから情報を抽出し、異常検知を行う技術がある。
山中友貴他、BERTを用いたパケットペイロードの特徴抽出、2021年度人工知能学会全国大会(第35回)
しかし、上記の非特許文献1には、異常検知のアラートを発出するための異常度に対するしきい値をどう設定するかという手法については触れられていない。一般的には、しきい値は、正常データと異常データの両方を用意し、それぞれデータの異常度を区切る値に調整するべきであるが、実際のサイバー攻撃のデータ(異常データ)を用意することは難しい。そのため、例えば、正常データの異常度の平均値に所定値を加えた値をしきい値とする方法がとられてきたが、この方法で得られたしきい値は、必ずしも、正常データおよび異常データの異常度を適切に区切る値ではない。その結果、異常検知システムは、異常パケットを精度よく検知することができないという問題があった。
そこで、本発明は、異常パケットを検知するための適切なしきい値を設定することを課題とする。
前記した課題を解決するため、本発明は、正常パケットを用いて学習されたBERT(Bidirectional Encoder Representations from Transformers)モデルに、正常パケットを入力し、前記正常パケットのエンコードを行う際の各バイト箇所に対するAttentionの大きさを取得するAttention取得部と、取得された前記正常パケットの各バイト箇所のAttentionの大きさに基づき、前記正常パケットの重要バイト箇所をサンプリングし、前記サンプリングした重要バイト箇所をランダムなバイトに書き換えることにより、疑似異常パケットを生成する疑似異常パケット生成部と、生成された疑似異常パケット群および正常パケット群の異常度に基づき、異常パケットを検知するための異常度のしきい値を決定するしきい値決定部とを備えることを特徴とする。
本発明によれば、異常パケットを検知するための適切なしきい値を設定することできる。
以下、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。本発明は、本実施形態に限定されない。
[BERTのAttention機構]
まず、本実施形態の異常検知装置が、パケットの異常度のしきい値の決定に用いるBERTのAttention機構について簡単に説明する。BERT等で用いられるAttention機構は、各トークン(例えば、文章ならば単語、パケットならばバイトに相当)に対する重みを付与する。ここでAttentionが強く働けば、BERTはそのAttentionが強く働いたトークンを重要視して固定長のベクトルへの変換を行うようになる。
まず、本実施形態の異常検知装置が、パケットの異常度のしきい値の決定に用いるBERTのAttention機構について簡単に説明する。BERT等で用いられるAttention機構は、各トークン(例えば、文章ならば単語、パケットならばバイトに相当)に対する重みを付与する。ここでAttentionが強く働けば、BERTはそのAttentionが強く働いたトークンを重要視して固定長のベクトルへの変換を行うようになる。
Attention機構は、BERTのPre-training taskであるMasked Language ModelingおよびNext Sentence Predictionの学習を経て、重要なトークンに対して大きな重みを付与するように最適化される。
図1は、BERTモデルに入力されたパケットのバイト箇所ごとのAttentionの強さの例を示す図である。図1において、ハッチングの濃さはAttentionの強さを示す。図1に示すように、パケットのfunction code、データ部等、パケット内の重要である可能性の高いバイト箇所は強くAttentionされる。
[概要]
異常検知装置は、上記のAttention機構を用いて、正常パケットで強くAttentionされるバイト箇所(=重要である可能性の高いバイト箇所)を重点的に書き換えることで、品質の高い疑似異常パケットを生成する。図2に、疑似異常パケットの生成手順の例を示す。
異常検知装置は、上記のAttention機構を用いて、正常パケットで強くAttentionされるバイト箇所(=重要である可能性の高いバイト箇所)を重点的に書き換えることで、品質の高い疑似異常パケットを生成する。図2に、疑似異常パケットの生成手順の例を示す。
まず、異常検知装置は、収集した正常パケットを用いてBERTモデルのPre-trainingを行う(S1)。次に、異常検知装置は、正常パケットをBERTモデルに入力し、エンコードを行い、その際の各バイトに対するAttentionを得る(S2)。ここで、Attention機構は、例えば、Layer方向、Head方向に平均化等の処理を行い、BERTモデルへ入力した正常パケットのバイト数と同じ次元を持つ1次元ベクトルのAttentionを得る。
次に、異常検知装置は、S2で得たAttentionの重みを用いて、正常パケットから、M回、バイト箇所を重み付けランダムサンプリングする(S3)。異常検知装置は、S3でランダムサンプリングしたバイト箇所をランダムなバイト(例えば、0x00-0xff)に書き換える(S4)。つまり、異常検知装置は、正常パケットからサンプリングされた重要バイト箇所を書き換えることにより、疑似異常パケットを生成する。
S4の後、未処理の正常パケットがあれば(S5でYes)、S2に戻り、未処理の正常パケットがなければ(S5でNo)、処理を終了する。
このようにすることで異常検知装置は、正常パケットの数×M個の疑似異常パケットを生成する。そして、異常検知装置は、生成した疑似異常パケット群と、正常パケット群とを用いて、パケットの異常を検知するための異常度のしきい値を決定する。しきい値の決定方法は、例えば、F1最適化等である。
そして、異常検知装置は、上記のようにして決定したしきい値を設定することにより、異常パケットを検知する。例えば、異常検知装置は、検知対象のパケットの異常度が、上記のしきい値を超える場合、当該パケットを異常パケットとして検知する。
このような異常検知装置によれば、異常パケットを検知するための適切なしきい値を設定することができるので、異常パケットの検知を精度よく行うことができる。
[構成例]
次に、図3を用いて異常検知装置10を説明する。なお、異常検知装置10は、例えば、検知対象のネットワークまたは機器ごとに適切な単位で配置される。そして、異常検知装置10は、その単位に対応したBERTモデル、VAEモデルおよび正常パケットを記憶部に保持する。
次に、図3を用いて異常検知装置10を説明する。なお、異常検知装置10は、例えば、検知対象のネットワークまたは機器ごとに適切な単位で配置される。そして、異常検知装置10は、その単位に対応したBERTモデル、VAEモデルおよび正常パケットを記憶部に保持する。
異常検知装置10は、例えば、パソコン等の汎用コンピュータで実現され、入力部11、出力部12、通信制御部13、記憶部14および制御部15を備える。
入力部11は、例えば、キーボードやマウス等の入力デバイスからの入力操作を受け付けるインタフェースである。出力部12は、例えば、液晶ディスプレイ等の表示装置、プリンター等の印刷装置等にデータを出力するためのインタフェースである。
通信制御部13は、例えば、NIC(Network Interface Card)等で実現され、LAN(Local Area Network)やインターネット等の電気通信回線を介した外部の装置と制御部15との通信を制御する。
記憶部14は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部14には、異常検知装置10を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータ等が予め記憶され、あるいは処理の都度一時的に記憶される。
記憶部14は、例えば、制御部15により学習されたBERTモデルおよびVAE(Variational AutoEncoder)モデル、正常パケット等を記憶する。また、制御部15により、異常パケットを検知するためのしきい値が決定されると、記憶部14は、決定されたしきい値を記憶する。
BERTモデルは、1つのパケットを1つの固定長ベクトルへ変換する規則を学習したモデルである。言い換えると、BERTモデルは、正常パケットにおける内部のバイト列の順序等の頻出パターンを学習したモデルである。
例えば、BERTモデルは、パケット内のある位置のバイトを、周辺のバイトから予測する、という補助タスクを解くことで、パケットの特徴を反映した中間表現、すなわち、固定長ベクトルを習得する。また、BERTモデルは、パケット内のある位置のバイトを、周辺のバイトから予測することで、パケットの特徴を反映したベクトル表現を獲得する。
VAEモデルは、BERTモデルにより変換されたパケットの固定長ベクトルに対して、当該パケットの異常度を割り振るモデルである。
制御部15は、例えば、CPU(Central Processing Unit)等を用いて実現され、メモリに記憶された処理プログラムを実行する。これにより、制御部15は、図3に例示するように、学習部151、Attention取得部152、疑似異常パケット生成部153、しきい値決定部154、検知部155として機能する。なお、これらの機能部は、それぞれ、あるいは一部が異なるハードウェアに実装されてもよい。
学習部151は、正常パケットを用いて、BERTモデルおよびVAEモデルの学習(生成、更新)を行う。例えば、学習部151は、正常パケットを用いて、Masked Language ModelingとNext Sentence Predictionの2つのタスクを解くことで、BERTモデルの学習を行う。
なお、本実施形態におけるMasked Language Modelingは、正常パケットのバイトをランダムにマスクし、マスクされる前のバイトを当てるタスクである。また、Next Sentence Predictionは、2つのパケットを入力し、これらが連続したパケットか否かを当てるタスクである。
Attention取得部152は、学習済みのBERTモデルに、正常パケットを入力し、正常パケットのエンコードを行う際における各バイト箇所に対するAttentionの大きさを取得する。
疑似異常パケット生成部153は、正常パケットから疑似異常パケットを生成する。例えば、疑似異常パケット生成部153は、Attention取得部152により取得された正常パケットの各バイト箇所のAttentionの大きさに基づき、当該正常パケットの重要バイト箇所をサンプリング(例えば、ランダムサンプリング)する。そして、疑似異常パケット生成部153は、サンプリングした重要バイト箇所のランダムなバイト(例えば、0x00-0xffのバイト)に書き換える。そして、疑似異常パケット生成部153は、正常パケットの重要バイト箇所の書き換えを行ったパケットを疑似異常パケットとする。
なお、しきい値の決定に用いる疑似異常パケットの数と正常パケットの数が等しいことが好ましい場合、疑似異常パケット生成部153は、生成する疑似異常パケットの数が正常パケットの数と同じ数になるよう、サンプリング数を調整する。
しきい値決定部154は、正常パケットと、疑似異常パケット生成部153により生成された疑似異常パケットを用いて、パケットを異常パケットとして検知するための異常度のしきい値を決定する。
例えば、しきい値決定部154は、上記のBERTモデルおよびVAEモデルに基づき、正常パケットおよび疑似異常パケットの異常度を算出する。次に、しきい値決定部154は、算出した正常パケットおよび疑似異常パケットの異常度に、F1最適化等を適用して異常度のしきい値を決定する。その後、しきい値決定部154は、決定した異常度のしきい値を記憶部14に記憶する。
検知部155は、しきい値決定部154により決定されたしきい値を用いて、異常パケットの検知を行う。例えば、検知部155は、検知対象のパケットの入力を受け付けると、BERTモデルにより当該パケットの特徴を反映した固定長ベクトルに変換する。次に、検知部155は、VAEモデルにより各固定長ベクトルに異常度を割り振る。そして、検知部155は、固定長ベクトルに割り振られた異常度が、上記のしきい値を超える場合、当該固定長ベクトルに対応するパケットを異常パケットとして検知する。その後、検知部155は、異常パケットの検知結果を出力する。
[処理手順の例]
次に、図4を用いて、異常検知装置10が行う処理手順の例を説明する。まず、異常検知装置10の学習部151は、正常パケットを用いて、BERTモデル、VAEモデルの生成または更新を行う(S11)。その後、疑似異常パケット生成部153は、正常パケット群を用いて疑似異常パケット群を生成する(S12)。
次に、図4を用いて、異常検知装置10が行う処理手順の例を説明する。まず、異常検知装置10の学習部151は、正常パケットを用いて、BERTモデル、VAEモデルの生成または更新を行う(S11)。その後、疑似異常パケット生成部153は、正常パケット群を用いて疑似異常パケット群を生成する(S12)。
S12の後、しきい値決定部154は、BERTモデル、VAEモデルを用いて、疑似異常パケット群および正常パケット群の異常度を算出する(S13)。そして、しきい値決定部154は、S13で算出した疑似異常パケット群および正常パケット群の異常度に基づき、異常パケットを検出するためのしきい値を決定する(S14)。その後、検知部155は、S14で決定されたしきい値を用いて、異常パケットを検知する(S15)。その後、検知部155は、異常パケットの検知結果を出力する。
このような異常検知装置10によれば、正常パケットから品質の高い疑似異常パケットを生成することができる。これにより、異常検知装置10は、異常パケットを検知するための適切なしきい値を設定することができる。その結果、異常検知装置10は、異常パケットを精度よく検知することができる。
[比較結果]
次に、図5を用いて、異常パケットの検知に、本実施形態の異常検知装置10により決定したしきい値を用いた場合と、従来技術により決定したしきい値(正常パケットの異常度+3*正常パケットの異常度の標準偏差)を用いた場合(比較例)との比較結果を説明する。
次に、図5を用いて、異常パケットの検知に、本実施形態の異常検知装置10により決定したしきい値を用いた場合と、従来技術により決定したしきい値(正常パケットの異常度+3*正常パケットの異常度の標準偏差)を用いた場合(比較例)との比較結果を説明する。
なお、異常検知装置10は、疑似異常パケットおよび正常パケットの異常度のF1最適化によりしきい値を決定した。また、評価に用いた機械学習モデルは、BERTモデルおよびVAEモデルを用いて、入力されたパケットのクラスが、Positive(異常)かNegative(正常)かを予測するモデルである。
図5に示すように、機械学習モデルが、パケットのクラスがPositive(異常)かNegative(正常)かを予測する際、従来技術により決定されたしきい値を用いた場合よりも、異常検知装置10により決定されたしきい値を用いた場合の方が、Accuracy、RecallおよびF値について良好な値であった。このことから、異常検知装置10により決定されたしきい値は、従来技術よりも異常パケットの検知に適したしきい値であることが確認できた。
[システム構成等]
また、図示した各部の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、図示した各部の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、前記した実施形態において説明した処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
前記した異常検知装置10は、パッケージソフトウェアやオンラインソフトウェアとしてプログラム(異常検知プログラム)を所望のコンピュータにインストールさせることによって実装できる。例えば、上記のプログラムを情報処理装置に実行させることにより、情報処理装置を異常検知装置10として機能させることができる。ここで言う情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等の端末等がその範疇に含まれる。
前記した異常検知装置10は、パッケージソフトウェアやオンラインソフトウェアとしてプログラム(異常検知プログラム)を所望のコンピュータにインストールさせることによって実装できる。例えば、上記のプログラムを情報処理装置に実行させることにより、情報処理装置を異常検知装置10として機能させることができる。ここで言う情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等の端末等がその範疇に含まれる。
図6は、異常検知プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011及びRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記の異常検知装置10が実行する各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、異常検知装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
また、上述した実施形態の処理で用いられるデータは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続される他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10 異常検知装置
11 入力部
12 出力部
13 通信制御部
14 記憶部
15 制御部
151 学習部
152 Attention取得部
153 疑似異常パケット生成部
154 しきい値決定部
155 検知部
11 入力部
12 出力部
13 通信制御部
14 記憶部
15 制御部
151 学習部
152 Attention取得部
153 疑似異常パケット生成部
154 しきい値決定部
155 検知部
Claims (6)
- 正常パケットを用いて学習されたBERT(Bidirectional Encoder Representations from Transformers)モデルに、正常パケットを入力し、前記正常パケットのエンコードを行う際の各バイト箇所に対するAttentionの大きさを取得するAttention取得部と、
取得された前記正常パケットの各バイト箇所のAttentionの大きさに基づき、前記正常パケットの重要バイト箇所をサンプリングし、前記サンプリングした重要バイト箇所をランダムなバイトに書き換えることにより、疑似異常パケットを生成する疑似異常パケット生成部と、
生成された疑似異常パケット群および正常パケット群の異常度に基づき、異常パケットを検知するための異常度のしきい値を決定するしきい値決定部と
を備えることを特徴とする異常検知装置。 - 前記しきい値決定部は、
F1最適化法により前記異常度のしきい値を決定する
ことを特徴とする請求項1に記載の異常検知装置。 - 検知対象のパケットの異常度が、前記しきい値を超える場合、前記パケットを異常パケットとして検知する検知部と
をさらに備えることを特徴とする請求項1に記載の異常検知装置。 - 前記疑似異常パケット生成部は、
取得された前記正常パケットの各バイト箇所のAttentionの大きさに基づき、前記正常パケットの重要バイト箇所をランダムサンプリングし、前記ランダムサンプリングした重要バイト箇所をランダムなバイトに書き換えることにより、前記疑似異常パケットを生成する
ことを特徴とする請求項1に記載の異常検知装置。 - 異常検知装置により実行される異常検知方法であって、
正常パケットを用いて学習されたBERT(Bidirectional Encoder Representations from Transformers)モデルに、正常パケットを入力し、前記正常パケットのエンコードを行う際の各バイト箇所に対するAttentionの大きさを取得する工程と、
取得した前記正常パケットの各バイト箇所のAttentionの大きさに基づき、前記正常パケットの重要バイト箇所をサンプリングし、前記サンプリングした重要バイト箇所をランダムなバイトに書き換えることにより、疑似異常パケットを生成する工程と、
生成した疑似異常パケット群および正常パケット群の異常度に基づき、異常パケットを検知するための異常度のしきい値を決定する工程と
を含むことを特徴とする異常検知方法。 - 正常パケットを用いて学習されたBERT(Bidirectional Encoder Representations from Transformers)モデルに、正常パケットを入力し、前記正常パケットのエンコードを行う際の各バイト箇所に対するAttentionの大きさを取得する工程と、
取得した前記正常パケットの各バイト箇所のAttentionの大きさに基づき、前記正常パケットの重要バイト箇所をサンプリングし、前記サンプリングした重要バイト箇所をランダムなバイトに書き換えることにより、疑似異常パケットを生成する工程と、
生成した疑似異常パケット群および正常パケット群の異常度に基づき、異常パケットを検知するための異常度のしきい値を決定する工程と
をコンピュータに実行させるための異常検知プログラム。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2021/046371 WO2023112227A1 (ja) | 2021-12-15 | 2021-12-15 | 異常検知装置、異常検知方法、および、異常検知プログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPWO2023112227A1 JPWO2023112227A1 (ja) | 2023-06-22 |
| JP7713146B2 true JP7713146B2 (ja) | 2025-07-25 |
Family
ID=86773879
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2023567408A Active JP7713146B2 (ja) | 2021-12-15 | 2021-12-15 | 異常検知装置、異常検知方法、および、異常検知プログラム |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US12457065B2 (ja) |
| EP (1) | EP4432619A4 (ja) |
| JP (1) | JP7713146B2 (ja) |
| CN (1) | CN118476203A (ja) |
| AU (1) | AU2021478370B2 (ja) |
| WO (1) | WO2023112227A1 (ja) |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11290508B1 (en) * | 2020-12-04 | 2022-03-29 | Capital One Services, Llc | Automated caching and tabling layer for finding and swapping media content |
| US20230030341A1 (en) * | 2021-07-22 | 2023-02-02 | Adobe Inc. | Dynamic user interface and machine learning tools for generating digital content and multivariate testing recommendations |
| US12143344B2 (en) * | 2022-09-19 | 2024-11-12 | Dell Products L.P. | Automatically processing user request data using artificial intelligence techniques |
-
2021
- 2021-12-15 WO PCT/JP2021/046371 patent/WO2023112227A1/ja not_active Ceased
- 2021-12-15 JP JP2023567408A patent/JP7713146B2/ja active Active
- 2021-12-15 CN CN202180104921.0A patent/CN118476203A/zh active Pending
- 2021-12-15 EP EP21968142.6A patent/EP4432619A4/en active Pending
- 2021-12-15 US US18/716,699 patent/US12457065B2/en active Active
- 2021-12-15 AU AU2021478370A patent/AU2021478370B2/en active Active
Non-Patent Citations (3)
| Title |
|---|
| Jacob Devlin, et al.,BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding,arXiv.org [オンライン],2019年05月24日,[取得日 2022.02.08], 取得先:<https://arxiv.org/abs/1810.04805> |
| Kukjin Choi et al.,Deep Learning for Anomaly Detection in Time-Series Data: Review, Analysis, and Guidelines,IEEE Access,Volume: 9,2021年08月26日,120043 - 120065 |
| 山中 友貴、ほか,BERTを用いたパケットペイロードの特徴抽出,2021年度人工知能学会全国大会(第35回),2021年06月08日 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP4432619A1 (en) | 2024-09-18 |
| AU2021478370A1 (en) | 2024-05-30 |
| US12457065B2 (en) | 2025-10-28 |
| US20250038899A1 (en) | 2025-01-30 |
| AU2021478370B2 (en) | 2025-04-03 |
| WO2023112227A1 (ja) | 2023-06-22 |
| CN118476203A (zh) | 2024-08-09 |
| JPWO2023112227A1 (ja) | 2023-06-22 |
| EP4432619A4 (en) | 2025-09-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Zhao et al. | SeqFuzzer: An industrial protocol fuzzing framework from a deep learning perspective | |
| US10860893B2 (en) | Automated and customized post-production release review of a model | |
| WO2022227388A1 (zh) | 日志异常检测模型训练方法、装置及设备 | |
| WO2020219157A1 (en) | System and method for security in internet-of-things and cyber-physical systems based on machine learning | |
| CN112492059A (zh) | Dga域名检测模型训练方法、dga域名检测方法、装置及存储介质 | |
| CN110321430B (zh) | 域名识别和域名识别模型生成方法、装置及存储介质 | |
| CN110912908A (zh) | 网络协议异常检测方法、装置、计算机设备和存储介质 | |
| CN118199922A (zh) | 基于深度学习的恶意挖矿域名检测方法 | |
| CN113609184B (zh) | 一种异常操作的预警方法、装置及设备 | |
| JP7632693B2 (ja) | 推定装置、推定方法及び推定プログラム | |
| JP7713146B2 (ja) | 異常検知装置、異常検知方法、および、異常検知プログラム | |
| Yuriiovych et al. | Zero-day polymorphic cyberattacks detection using fuzzy inference system | |
| EP3839781A1 (en) | Calculation device, calculation method, and calculation program | |
| JP7444287B2 (ja) | 推定装置、推定方法、および、推定プログラム | |
| EP4333391A1 (en) | Detection device, detection method, and detection program | |
| CN117892102B (zh) | 基于主动学习的入侵行为检测方法、系统、设备及介质 | |
| CN111178407B (zh) | 路况数据筛选方法、装置、计算机设备及存储介质 | |
| US12287874B2 (en) | Efficient integrity monitoring of processing operations with multiple memory arrays | |
| JP7331938B2 (ja) | 学習装置、推定装置、学習方法及び学習プログラム | |
| CN116090021A (zh) | 一种接入设备的认证方法、装置及通信设备 | |
| CN118972165B (zh) | 一种零信任威胁检测方法、装置和系统 | |
| CN112764791A (zh) | 一种增量更新的恶意软件检测方法及系统 | |
| CN119071037B (zh) | 无文件攻击场景图确定方法、装置、电子设备和可读介质 | |
| US12621225B2 (en) | Estimation device, estimation method, and estimation program | |
| US12493750B2 (en) | Detecting apparatus, training apparatus, detecting method, training method, detecting program, and training program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240612 |
|
| 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: 20250610 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250623 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7713146 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |