WO2022211301A1 - 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템 - Google Patents
오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템 Download PDFInfo
- Publication number
- WO2022211301A1 WO2022211301A1 PCT/KR2022/003360 KR2022003360W WO2022211301A1 WO 2022211301 A1 WO2022211301 A1 WO 2022211301A1 KR 2022003360 W KR2022003360 W KR 2022003360W WO 2022211301 A1 WO2022211301 A1 WO 2022211301A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- autoencoder
- error
- unit
- distribution
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000001514 detection method Methods 0.000 title claims abstract description 13
- 206010000117 Abnormal behaviour Diseases 0.000 title claims abstract description 11
- 238000009826 distribution Methods 0.000 claims abstract description 55
- 230000002159 abnormal effect Effects 0.000 claims abstract description 15
- 238000007781 pre-processing Methods 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 4
- 238000011084 recovery Methods 0.000 abstract 3
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000005856 abnormality Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- 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
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Definitions
- the present invention relates to a method and system for detecting anomaly behavior based on an autoencoder ensemble, and more specifically, an autoencoder ensemble-based method capable of detecting abnormal behavior of network packets in real time by automatically generating an autoencoder ensemble by analyzing the distribution of data. It relates to a method and system for detecting anomalies.
- An artificial intelligence model is being used as a method to detect abnormal behavior in network systems such as companies and institutions.
- network systems such as companies and institutions become more complex and the amount of data to be handled increases, the number of cases of dealing with large-scale imbalanced data as a target for abnormal behavior detection is increasing.
- Large-capacity hyper-uniform data refers to data in which the number of samples is large but the number of classes is not large. For example, if there are 10,000 data samples, of which 9,990 are normal data, and 10 are abnormal data, the class ratio is 100:1, and it can be said that the data is highly imbalanced.
- the oversampling technique can be used, but it is only possible in a supervised learning environment, and there is a difficulty in using the oversampling technique because the data is not labeled in an unsupervised learning environment.
- a general clustering method is used in an ultra-uniform unsupervised learning environment, since the number of abnormal data samples is small, it may belong to other normal data sample clusters, which may decrease attack detection performance.
- the problem to be solved by the present invention is to analyze the distribution of large-capacity ultra-uniform data and automatically generate an auto-encoder ensemble to detect abnormal behavior of network packets in real time. To provide a method and system for detecting abnormal behavior will be.
- the method according to the present invention for solving the above technical problem includes the steps of: a collecting unit collecting data necessary for learning from log data converted from network packet data; clustering the collected data based on the identified data distribution; generating a plurality of autoencoder models by the number of clustering the collected data by the learning unit; Learning with data belonging to a corresponding cluster, a prediction unit inputting prediction target data to the plurality of autoencoder models and calculating a restoration error, wherein the prediction unit has the smallest restoration error among the plurality of autoencoder models Selecting an auto-encoder model, and predicting whether the prediction target data is abnormal by comparing a reference error preset in the selected auto-encoder model with a restoration error calculated in the selected auto-encoder model by the prediction unit.
- the reference error preset in the selected autoencoder model is obtained based on the error obtained in the step of learning with data belonging to the corresponding cluster.
- the reference error preset in the selected autoencoder model may be determined as any one of a variance-based reference value, average error, highest error, and lowest error obtained in the step of learning with data belonging to the corresponding cluster.
- the converted plurality of lines of log data are aggregated for each predetermined time interval and expressed as one line of data, but numerical data can be expressed by obtaining statistics of each variable. .
- the numerical data may be expressed as at least one statistical value of an average, a change amount, and a variance of each variable.
- a distribution of the collected data may be identified.
- a distribution of the collected data may be identified using a Variational AutoEncoder (VAE).
- VAE Variational AutoEncoder
- It may include a computer-readable recording medium in which a program for executing the method in a computer according to an embodiment of the present invention for solving the above technical problem is recorded.
- an autoencoder ensemble by analyzing the distribution of large-capacity hyper-uniform data to detect abnormal behavior of network packets in real time.
- FIG. 1 is a block diagram showing the configuration of an autoencoder ensemble-based anomaly detection system according to an embodiment of the present invention.
- FIG 2 shows an example in which log data according to the present invention is aggregated and expressed as one line of data.
- FIG. 3 is a diagram illustrating a data pre-processing method according to the present invention.
- FIG. 4 is a conceptual diagram illustrating that two main data distributions exist in data collected using VAE according to an embodiment of the present invention.
- FIG. 5 is a diagram illustrating a data clustering process according to the present invention.
- FIG. 6 is a flowchart illustrating the operation of an autoencoder ensemble-based anomaly detection system according to an embodiment of the present invention.
- FIG. 1 is a block diagram showing the configuration of an autoencoder ensemble-based anomaly detection system according to an embodiment of the present invention.
- the autoencoder ensemble-based abnormal behavior detection system 100 includes a transformation unit 110 , a collection unit 120 , a preprocessor 130 , a distribution grasper 140 , and a clustering unit ( 150 ), a learning unit 160 , and a prediction unit 170 may be included.
- the conversion unit 110 may convert network packet data collected from an internal network such as a company or a public institution into log data in log form and store it in a database.
- the collection unit 120 may collect data necessary for learning from log data converted from network packet data. If the volume of log data converted from the collected network packet data is large, there may be difficulties in the analysis and learning process. Therefore, according to an embodiment, in order to reduce the capacity while maintaining the information amount of the data, the collecting unit 120 may collect the data required for learning in the form of collecting log data for each time section and expressing it as one line of data and store it in the database.
- the collection unit 120 collects the log data of a plurality of lines converted according to the embodiment for each predetermined time interval and expresses it as one line of data, but the numeric data is obtained by obtaining statistics of each variable included in the log data of the plurality of lines.
- numeric data may be expressed as at least one statistical value of an average, a change amount, and a variance of each variable included in the log data.
- FIG 2 shows an example in which log data according to the present invention is aggregated and expressed as one line of data.
- the same user ie, the source IP (src_ip) collects log data within the same predetermined time to express numerical data by calculating the average and variation, and natural language data can be aggregated in one line. Natural language data may be expressed by dividing data included in each log collected according to an embodiment with a delimiter such as a comma (,).
- the pre-processing unit 130 may pre-process the data collected by the collecting unit 120 in a predetermined method.
- a data preprocessing process is required to transform log data into input values required by the AI-based model.
- Data can be divided into two types: numeric data and string data.
- FIG. 3 is a diagram illustrating a data pre-processing method according to the present invention.
- the pre-processing unit 130 may apply a standardization function to pre-process numeric data as illustrated in FIG. 3A to rescal the data.
- the preprocessor 130 may scale numeric data by using one of various scaling techniques such as Standard scaling and MinMax Scaling among normalization methods in order to preprocess numeric data.
- the preprocessor 130 may use a Term Frequency - Inverse Document Frequency (TF-IDF) technique to convert string data into a numeric vector form as illustrated in FIG. 3B .
- TF-IDF Term Frequency - Inverse Document Frequency
- the distribution determiner 140 may determine the distribution of the collected data. According to an embodiment, the distribution determiner 140 may determine the distribution of the collected data using a Variational AutoEncoder (VAE).
- VAE Variational AutoEncoder
- VAE is known to find the distribution of latent variables that explain the given data well, and to reconstruct the original data well from the latent variables. In other words, VAE can reduce the dimension of data to check which distribution the data is sampled from.
- the distribution of data can be extracted by learning the VAE and using the sampling technique in the hidden layer. And by analyzing the extracted distribution, the number of data types with different distributions can be identified.
- FIG. 4 is a conceptual diagram illustrating that two main data distributions exist in data collected using VAE according to an embodiment of the present invention.
- the distribution determiner 140 has been described as using the VAE, but it is also possible to use other models that can determine the distribution of data.
- the clustering unit 150 may cluster the collected data based on the data distribution identified by the distribution determining unit 140 .
- FIG. 5 is a diagram illustrating a data clustering process according to the present invention.
- the clustering unit 150 may use a Gaussian Mixture Model (GMM) technique to determine the number of distributions of data using the distribution determiner 140 and then cluster the data.
- GMM Gaussian Mixture Model
- the GMM can be trained with the VAE hidden layer and the cluster labels of the data can be predicted.
- the clustering unit 150 has been described as using the GMM, but data clustering using other models is also possible.
- the learning unit 160 may generate a plurality of autoencoder models as many as the number of clusters of the collected data.
- the autoencoder reduces the dimension of input data in the encoder, then restores it in the decoder and returns the same output value as the input data. That is, the autoencoder can train the model by comparing the model input and output values.
- the learning unit 160 may learn the generated plurality of autoencoder models as data belonging to a cluster corresponding to each of them.
- a plurality of autoencoders may separately learn data properties for a cluster to which they belong.
- the learning unit 160 stores the largest error (hereinafter referred to as 'best error') generated for each autoencoder model while learning the plurality of autoencoder models.
- data on an error obtained for each autoencoder model may be stored.
- a reference value based on the variance of the error, the average error, the highest error, and the lowest error may be stored.
- the prediction unit 170 may predict whether abnormality is achieved by inputting prediction target data into an ensemble network constructed with a plurality of autoencoder models learned by the learning unit 160 .
- the prediction unit 170 calculates a restoration error for the prediction target data using a plurality of autoencoder models, respectively.
- the prediction unit 170 may select an autoencoder model having the smallest restoration error calculated from among the plurality of autoencoder models.
- the prediction unit 170 may predict whether the prediction target data is abnormal by comparing the reference error preset in the selected autoencoder model with the restoration error calculated in the selected autoencoder model.
- the reference error preset in the autoencoder model may be set as the best error obtained in the learning step for each of the plurality of autoencoder models described above.
- the reference error preset in the auto-encoder model may be set based on the error obtained for each auto-encoder model. For example, it may be set among a reference value based on the variance of the error, the average error, the highest error, or the lowest error.
- the prediction unit 170 may predict the prediction target data as abnormal data when the restoration error calculated in the selected autoencoder model is greater than the best error.
- the prediction target data may be predicted as abnormal data.
- FIG. 6 is a flowchart illustrating the operation of an autoencoder ensemble-based anomaly detection system according to an embodiment of the present invention.
- the conversion unit 110 may convert network packet data collected from an internal network such as a company or a public institution into log data in log form and store it in a database ( S610 ).
- the collection unit 120 may collect data necessary for learning from the log data converted from network packet data ( S620 ).
- the collecting unit 120 may collect data necessary for learning in the form of a single line of data by collecting log data for each time interval in order to reduce the capacity while maintaining the information amount of the data, and store it in the database.
- the pre-processing unit 130 may pre-process the data collected by the collecting unit 120 in a predetermined method (S630).
- the data pre-processing method in step S630 may be predetermined by the operator of the system 100 among various methods of converting log data into an input value form required by the AI-based model.
- the distribution determiner 140 may determine the distribution of the collected data (S640).
- the distribution determiner 140 may determine the distribution of the collected data using a Variational AutoEncoder (VAE).
- VAE Variational AutoEncoder
- VAE Variational AutoEncoder
- the clustering unit 150 may cluster the collected data based on the data distribution identified by the distribution determining unit 140 ( S650 ).
- the learning unit 160 may generate a plurality of autoencoder models as many as the number of clusters of the collected data (S660).
- the learning unit 160 may learn the generated plurality of autoencoder models as data belonging to a cluster corresponding to each of them (S670).
- the learning unit 160 stores the best error for each autoencoder model while learning the plurality of autoencoder models.
- data on errors obtained for each autoencoder model may be stored. For example, a reference value based on the variance of the error, the average error, the highest error, and the lowest error may be stored.
- the prediction unit 170 may predict whether or not abnormality by inputting the prediction target data into an ensemble network constructed with a plurality of autoencoder models learned by the learning unit 160 ( S680 ).
- step S380 may be performed as follows. First, the prediction unit 170 calculates a restoration error for prediction target data using a plurality of autoencoder models, respectively. In addition, the prediction unit 170 may select an autoencoder model having the smallest restoration error calculated from among the plurality of autoencoder models. Finally, the prediction unit 170 may compare a reference error preset in the selected auto-encoder model with a restoration error calculated in the selected auto-encoder model, and output a prediction result of whether the prediction target data is abnormal.
- the preset reference error may be the best error obtained for each autoencoder model while training a plurality of autoencoder models.
- a reference error may be preset based on an error obtained in the step of learning with data belonging to a corresponding cluster.
- a reference value based on variance of errors obtained for each autoencoder model, an average error, the highest error, or the lowest error may be preset as the reference error.
- the embodiments described above may be implemented by a hardware component, a software component, and/or a combination of a hardware component and a software component.
- the apparatus, methods and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate (FPGA). array), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose computing devices or special purpose computing devices.
- the processing device may execute an operating system (OS) and one or more software applications running on the operating system.
- OS operating system
- software applications running on the operating system.
- the processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
- the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that may include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.
- the software may comprise a computer program, code, instructions, or a combination of one or more of these, which configures the processing device to operate as desired or is independently or collectively processed You can command the device.
- the software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or device, to be interpreted by or to provide instructions or data to the processing device. may be permanently or temporarily embody in
- the software may be distributed over networked computer systems and stored or executed in a distributed manner.
- Software and data may be stored in one or more computer-readable recording media.
- the method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium.
- the computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination.
- the program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software.
- Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks.
- - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
- Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
- the hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Medical Informatics (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
Abstract
본 발명은 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템에 관한 것으로, 본 발명에 따른 방법은 네트워크 패킷 데이터를 변환한 로그 데이터에서 학습에 필요한 데이터를 수집하는 단계, 수집된 데이터의 분포를 파악하는 단계, 파악된 데이터 분포에 기초하여 상기 수집된 데이터를 군집화하는 단계, 수집된 데이터를 군집화한 수만큼 복수의 오토인코더 모델을 생성하는 단계, 생성된 복수의 오토인코더 모델을 대응하는 군집에 속하는 데이터로 학습시키는 단계, 복수의 오토인코더 모델에 예측 대상 데이터를 입력하여 복원 오차를 계산하는 단계, 복수의 오토인코더 모델 중에서 복원 오차가 가장 작게 계산된 오토인코더 모델을 선택하는 단계, 선택된 오토인코더 모델에 미리 설정된 기준 오차와 선택된 오토인코더 모델에서 계산된 복원 오차를 비교하여 예측 대상 데이터의 비정상 여부를 예측하는 단계를 포함한다.
Description
본 발명은 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템에 관한 것으로, 보다 자세하게는 데이터의 분포를 분석하여 자동으로 오토인코더 앙상블을 생성하여 네트워크 패킷의 이상행위를 실시간으로 검출할 수 있는 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템에 관한 것이다.
기업이나 기관 등의 네트워크 시스템에서 비정상 행위를 탐지하기 위한 방법으로 인공지능 모델이 사용되고 있다. 그런데 기업이나 기관 등의 네트워크 시스템이 점점 복잡해지고 다루는 데이터의 양이 많아지면서, 이상행위 탐지 대상으로 대용량 불균형 데이터를 다루게 되는 경우가 늘어나고 있다.
불균형 데이터 문제를 해결하기 위해 학습 대상 데이터를 균형잡힌 클래스 분포를 만들어서 해결하고자 하는 노력이 있다. 그런데 종래 알고리즘은 대용량 초불균형 데이터의 특성을 고려하지 않아서 대용량 초불균형 데이터에서 이상행위 및 공격을 탐지하는데 어려움이 있었다.
대용량 초불균형 데이터라는 것은 데이터가 샘플 개수가 많지만 클래스 개수가 많지 않은 데이터를 말한다. 예를 들면 데이터 샘플 10,000개가 있고 그 중에 9,990개 정상 데이터고, 10개가 비정상 이상행위 데이터인 경우, 클래스 비율은 100:1 이 되고 초불균형 데이터라고 할 수 있다.
대용량 초불균형 데이터에서 공격 탐지가 어려운 이유는 정상 데이터 많기 때문에 분류기를 학습할 때 분류기가 정상 데이터 패턴을 훨씬 많이 학습하게 되어, 공격데이터를 탐지할 때 정상데이터로 오탐 예측할 확률이 크게 된다.
오버샘플링(OverSampling) 기법을 쓸 수 있지만 지도 학습 환경에서만 가능하고, 비지도 학습 환경에서 데이터 라벨링이 되어 있지 않아서 오버샘플링 기법을 사용하는 것에 어려움이 있다. 그리고 초불균형 비지도 학습 환경에서 일반적인 군집화 방법을 쓰면 비정상 데이터 샘플 개수가 적기 때문에 다른 정상 데이터 샘플 군집에 속하게 될 수도 있어서 공격 탐지 성능이 떨어질 수 있다.
따라서 본 발명이 해결하려는 과제는 대용량 초불균형 데이터의 분포를 분석하여 자동으로 오토인코더 앙상블을 생성하여 네트워크 패킷의 이상행위를 실시간으로 검출할 수 있는 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템을 제공하는 것이다.
상기한 기술적 과제를 해결하기 위한 본 발명에 따른 방법은 수집부가 네트워크 패킷 데이터를 변환한 로그 데이터에서 학습에 필요한 데이터를 수집하는 단계, 분포 파악부가 상기 수집된 데이터의 분포를 파악하는 단계, 군집화부가 상기 파악된 데이터 분포에 기초하여 상기 수집된 데이터를 군집화하는 단계, 학습부가 상기 수집된 데이터를 군집화한 수만큼 복수의 오토인코더 모델을 생성하는 단계, 상기 학습부가 상기 생성된 복수의 오토인코더 모델을 대응하는 군집에 속하는 데이터로 학습시키는 단계, 예측부가 상기 복수의 오토인코더 모델에 예측 대상 데이터를 입력하여 복원 오차를 계산하는 단계, 상기 예측부가 상기 복수의 오토인코더 모델 중에서 복원 오차가 가장 작게 계산된 오토인코더 모델을 선택하는 단계, 상기 예측부가 상기 선택된 오토인코더 모델에 미리 설정된 기준 오차와 상기 선택된 오토인코더 모델에서 계산된 복원 오차를 비교하여 상기 예측 대상 데이터의 비정상 여부를 예측하는 단계를 포함한다.
상기 선택된 오토인코더 모델에 미리 설정된 기준 오차는, 상기 대응하는 군집에 속하는 데이터로 학습시키는 단계에서 구해지는 오차에 기반하여 구해진다.
상기 선택된 오토인코더 모델에 미리 설정된 기준 오차는, 상기 대응하는 군집에 속하는 데이터로 학습시키는 단계에서 구해지는 오차의 분산 기반의 기준값, 평균 오차, 최상 오차 및 최저 오차 중 어느 하나로 정해질 수 있다.
상기 로그 데이터에서 학습에 필요한 데이터를 수집하는 단계는, 상기 변환된 복수 줄의 로그 데이터를 미리 정해진 시간 구간마다 집합하여 한 줄의 데이터로 표현하되, 숫자 데이터는 각 변수의 통계를 구해서 표현할 수 있다.
상기 숫자 데이터는 상기 각 변수의 평균, 변화량 및 분산 중 적어도 하나의 통계값으로 표현할 수 있다.
상기 수집된 데이터를 미리 정해진 방법으로 전처리한 후 상기 수집된 데이터의 분포를 파악할 수 있다.
VAE(Variational AutoEncoder)를 이용하여 상기 수집된 데이터의 분포를 파악할 수 있다.
상기 예측 대상 데이터에 대해 상기 선택된 오토인코더 모델에서 계산된 복원 오차가 상기 선택된 오토인코더 모델에 미리 설정된 기준 오차보다 큰 경우 비정상 데이터로 예측할 수 있다.
상기한 기술적 과제를 해결하기 위한 본 발명에 따른 시스템은, 네트워크 패킷 데이터를 변환한 로그 데이터에서 학습에 필요한 데이터를 수집하는 수집부, 상기 수집된 데이터의 분포를 파악하는 분포 파악부, 상기 파악된 데이터 분포에 기초하여 상기 수집된 데이터를 군집화하는 군집화부, 상기 수집된 데이터를 군집화한 수만큼 복수의 오토인코더 모델을 생성하고, 상기 생성된 복수의 오토인코더 모델을 대응하는 군집에 속하는 데이터로 학습시키는 학습부, 그리고 상기 복수의 오토인코더 모델에 예측 대상 데이터를 입력하여 복원 오차를 계산하고, 상기 복수의 오토인코더 모델 중에서 복원 오차가 가장 작게 계산된 오토인코더 모델을 선택하며, 상기 선택된 오토인코더 모델에 미리 설정된 기준 오차와 상기 선택된 오토인코더 모델에서 계산된 복원 오차를 비교하여 상기 예측 대상 데이터의 비정상 여부를 예측하는 예측부를 포함한다.
상기한 기술적 과제를 해결하기 위한 본 발명의 한 실시예에 따른 컴퓨터에 상기한 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 포함할 수 있다.
본 발명에 의하면 대용량 초불균형 데이터의 분포를 분석하여 자동으로 오토인코더 앙상블을 생성하여 네트워크 패킷의 이상행위를 실시간으로 검출할 수 있다.
도 1은 본 발명의 일 실시예에 따른 오토인코더 앙상블 기반 이상행위 탐지 시스템의 구성을 나타낸 블록도이다.
도 2는 본 발명에 따른 로그 데이터를 집합하여 한 줄의 데이터로 표현하는 예를 나타낸 것이다.
도 3은 본 발명에 따른 데이터 전처리 방법을 예시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 VAE를 이용하여 수집된 데이터에 2개의 주 데이터 분포가 존재하는 것을 파악한 것을 나타낸 개념도이다.
도 5는 본 발명에 따른 데이터 군집화 과정을 예시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 오토인코더 앙상블 기반 이상행위 탐지 시스템의 동작을 설명하는 흐름도이다.
그러면 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 오토인코더 앙상블 기반 이상행위 탐지 시스템의 구성을 나타낸 블록도이다.
도 1을 참고하면, 본 발명에 따른 오토인코더 앙상블 기반 이상행위 탐지 시스템(100)은 변환부(110), 수집부(120), 전처리부(130), 분포 파악부(140), 군집화부(150), 학습부(160) 및 예측부(170)를 포함할 수 있다.
변환부(110)는 기업이나 공공기관 등의 내부 네트워크에서 수집되는 네트워크 패킷 데이터를 로그 형태의 로그 데이터로 변환하여 데이터베이스에 저장할 수 있다.
수집부(120)는 네트워크 패킷 데이터를 변환한 로그 데이터에서 학습에 필요한 데이터를 수집할 수 있다. 수집된 네트워크 패킷 데이터를 변환한 로그 데이터의 용량이 크면 분석 및 학습 과정에서 어려움이 있을 수 있다. 따라서 실시예에 따라서 수집부(120)는 데이터의 정보량을 유지하면서 용량을 줄이기 위하여 로그 데이터를 시간 구간마다 집합하여 한 줄의 데이터로 표현한 형태로 학습에 필요한 데이터를 수집하여 데이터베이스에 저장할 수도 있다.
수집부(120)는 실시예에 따라서 변환된 복수 줄의 로그 데이터를 미리 정해진 시간 구간마다 집합하여 한 줄의 데이터로 표현하되, 숫자 데이터는 복수 줄의 로그 데이터에 포함된 각 변수의 통계를 구해서 표현할 수 있다. 가령 숫자 데이터는 로그 데이터에 포함된 각 변수의 평균, 변화량 및 분산 중 적어도 하나의 통계값으로 표현할 수 있다.
도 2는 본 발명에 따른 로그 데이터를 집합하여 한 줄의 데이터로 표현하는 예를 나타낸 것이다.
도 2에 예시한 것과 같이 동일 사용자, 즉 소스 아이피(src_ip)가 동일한 일정한 시간 내의 로그 데이터를 집합하여 숫자 데이터는 평균 및 변화량을 구해서 표현하고, 자연어 데이터는 한 줄로 집합할 수 있다. 자연어 데이터는 실시예에 따라서 집합된 각 로그에 포함된 데이터를 컴마(,)와 같은 구분자로 구분하여 표현할 수도 있다.
전처리부(130)는 수집부(120)에서 수집된 데이터를 미리 정해진 방법으로 전처리할 수 있다.
로그 데이터를 인공지능 기반 모델에서 필요한 입력값 형태로 변환하기 위하여 데이터 전처리 과정이 필요하다. 데이터는 크게 숫자 데이터와 문자열 데이터의 2가지 포맷으로 구분할 수 있다.
도 3은 본 발명에 따른 데이터 전처리 방법을 예시한 도면이다.
전처리부(130)는 도 3(a)에 예시한 것과 같이 숫자 데이터를 전처리하기 위해 표준화(standardization) 함수를 적용하여 데이터를 리스케일링(rescaling)할 수 있다. 물론 실시예에 따라서 전처리부(130)는 숫자 데이터를 전처리하기 위해 표준화(Normalization) 방법 중에 Standard scaling, MinMax Scaling 등 여러 가지 스케일링 기법 중에 하나를 써서 숫자데이터를 스케일링 하는 것도 가능하다.
그리고 전처리부(130)는 도 3(b)에 예시한 것과 같이 문자열 데이터를 숫자 벡터 형태로 변환하기 위해 TF-IDF(Term Frequency - Inverse Document Frequency) 기술을 사용할 수 있다. TF-IDF는 문자열을 분석하여 각 문자열이 나타난 빈도에 따라 맞는 벡터를 부여한다. 로그 데이터를 숫자로 변환한 후 벡터 하나로 조합하여 매트릭스 형태로 변형할 수 있다.
여기서 예시한 방법이 아닌 다른 적절한 방법에 의해 전처리부(130)에서 로그 데이터를 인공지능 기반 모델에서 필요한 입력값 형태로 변환하는 것도 가능하다. 로그 데이터를 인공지능 기반 모델에서 필요한 입력값 형태로 변환하는 다양한 공지된 방법이 이용될 수 있다.
분포 파악부(140)는 수집된 데이터의 분포를 파악할 수 있다. 실시예에 따라 분포 파악부(140)는 VAE(Variational AutoEncoder)를 이용하여 수집된 데이터의 분포를 파악할 수 있다.
VAE는 주어진 데이터를 잘 설명하는 잠재 변수의 분포를 찾고, 잠재 변수로부터 원본 데이터를 잘 복원하는 것으로 알려져 있다. 즉 VAE는 데이터의 차원을 축소하여 데이터가 어떤 분포에 샘플링되는지 확인할 수 있다. VAE를 학습하고 은닉 레이어(hidden layer)에서 샘플링 기법을 이용하여 데이터의 분포를 추출할 수 있다. 그리고 추출한 분포를 분석하여 분포가 서로 다른 데이터 종류의 수를 파악할 수 있다.
도 4는 본 발명의 일 실시예에 따른 VAE를 이용하여 수집된 데이터에 2개의 주 데이터 분포가 존재하는 것을 파악한 것을 나타낸 개념도이다.
본 실시예에서 분포 파악부(140)는 VAE를 이용하는 것으로 설명하였으나, 데이터의 분포를 파악할 수 있는 다른 모델을 이용하는 것도 가능하다.
군집화부(150)는 분포 파악부(140)에서 파악된 데이터 분포에 기초하여 수집된 데이터를 군집화할 수 있다.
도 5는 본 발명에 따른 데이터 군집화 과정을 예시한 도면이다.
군집화부(150)는 도 5에 예시한 것과 같이 분포 파악부(140)를 이용하여 데이터의 분포 개수를 파악한 다음에 데이터를 군집화하기 GMM(Gaussian Mixture Model) 기법을 사용할 수 있다. 데이터를 학습하여 VAE 은닉 레이어(VAE hidden layer)로 GMM을 학습하고 데이터의 군집 레이블을 예측할 수 있다.
본 실시예에서 군집화부(150)는 GMM을 이용하는 것으로 설명하였으나, 다른 모델을 이용하여 데이터 군집화를 하는 것도 가능하다.
학습부(160)는 수집된 데이터를 군집화한 수만큼 복수의 오토인코더 모델을 생성할 수 있다. 여기서 오토인코더는 인코더에서 입력 데이터의 차원을 축소한 다음, 다시 디코더에서 복원해서 입력 데이터와 동일한 출력값을 리턴한다. 즉 오토인코더는 모델 입력값과 출력값을 비교하여 모델을 학습시킬 수 있다.
학습부(160)는 생성된 복수의 오토인코더 모델을 각각 자신에 대응하는 군집에 속하는 데이터로 학습시킬 수 있다. 복수의 오토인코더는 자신이 속하는 군집에 대한 데이터 속성을 따로 학습할 수 있다.
학습부(160)는 복수의 오토인코더 모델을 학습시키는 동안 각 오토인코더 모델 별로 발생된 가장 큰 오차(이하 '최상 오차'라 함)를 저장해놓는다. 실시예에 따라서 각 오토인코더 모델 별로 구해지는 오차에 대한 데이터를 저장해놓을 수 있다. 예컨대 오차의 분산 기반의 기준값, 평균 오차, 최상 오차 및 최저 오차 등을 저장해놓을 수 있다.
예측부(170)는 학습부(160)에서 학습된 복수의 오토인코더 모델로 구축된 앙상블 네트워크에 예측 대상 데이터를 입력하여 비정상 여부를 예측할 수 있다.
구체적으로 예측부(170)는 복수의 오토인코더 모델을 이용하여 예측 대상 데이터에 대한 복원 오차를 각각 계산한다. 그리고 예측부(170)는 복수의 오토인코더 모델 중에서 복원 오차가 가장 작게 계산된 오토인코더 모델을 선택할 수 있다. 예측부(170)는 선택된 오토인코더 모델에 미리 설정된 기준 오차와 선택된 오토인코더 모델에서 계산된 복원 오차를 비교하여 예측 대상 데이터의 비정상 여부를 예측할 수 있다. 여기서 오토인코더 모델에 미리 설정된 기준 오차는 앞서 설명한 복수의 오토인코더 모델별로 학습 단계에서 구해진 최상 오차로 설정될 수 있다. 물론 실시예에 따라서 오토인코더 모델에 미리 설정된 기준 오차는 각 오토인코더 모델 별로 구해지는 오차에 기반하여 설정될 수 있다. 예를 들어 오차의 분산 기반의 기준값, 평균 오차, 최상 오차 또는 최저 오차 중에서 설정될 수도 있다.
예측부(170)는 선택된 오토인코더 모델에서 계산된 복원 오차가 최상 오차보다 큰 경우 예측 대상 데이터를 비정상 데이터로 예측할 수 있다. 물론 실시예에 따라서 복원 오차가 오차의 분산 기반의 기준값, 평균 오차, 최상 오차 또는 최저 오차 이상이거나 큰 경우 예측 대상 데이터를 비정상 데이터로 예측하도록 구현할 수도 있다.
도 6은 본 발명의 일 실시예에 따른 오토인코더 앙상블 기반 이상행위 탐지 시스템의 동작을 설명하는 흐름도이다.
도 6을 참고하면, 먼저 변환부(110)는 기업이나 공공기관 등의 내부 네트워크에서 수집되는 네트워크 패킷 데이터를 로그 형태의 로그 데이터로 변환하여 데이터베이스에 저장할 수 있다(S610).
다음으로 수집부(120)는 네트워크 패킷 데이터를 변환한 로그 데이터에서 학습에 필요한 데이터를 수집할 수 있다(S620). 단계(S620)에서 수집부(120)는 데이터의 정보량을 유지하면서 용량을 줄이기 위하여 로그 데이터를 시간 구간마다 집합하여 한 줄의 데이터로 표현한 형태로 학습에 필요한 데이터를 수집하여 데이터베이스에 저장할 수 있다.
다음으로 전처리부(130)는 수집부(120)에서 수집된 데이터를 미리 정해진 방법으로 전처리할 수 있다(S630). 단계(S630)에서 데이터 전처리 방법은 로그 데이터를 인공지능 기반 모델에서 필요한 입력값 형태로 변환하는 다양한 방법 중에서 시스템(100)의 운영자 등에 의해 미리 정해질 수 있다.
이후 분포 파악부(140)는 수집된 데이터의 분포를 파악할 수 있다(S640). 단계(S640)에서 분포 파악부(140)는 VAE(Variational AutoEncoder)를 이용하여 수집된 데이터의 분포를 파악할 수 있다. 물론 VAE가 아닌 데이터 분포 파악에 적절한 다른 모델을 이용하는 것도 가능하다.
다음으로 군집화부(150)는 분포 파악부(140)에서 파악된 데이터 분포에 기초하여 수집된 데이터를 군집화할 수 있다(S650).
이후 학습부(160)는 수집된 데이터를 군집화한 수만큼 복수의 오토인코더 모델을 생성할 수 있다(S660).
그리고 학습부(160)는 생성된 복수의 오토인코더 모델을 각각 자신에 대응하는 군집에 속하는 데이터로 학습시킬 수 있다(S670). 단계(S670)에서 학습부(160)는 복수의 오토인코더 모델을 학습시키는 동안 각 오토인코더 모델 별로 최상 오차를 저장해놓는다. 실시예에 따라서 복수의 오토인코더 모델을 학습시키는 동안 각 오토인코더 모델 별로 구해지는 오차에 대한 데이터를 저장해놓을 수 있다. 예를 들어 오차의 분산 기반의 기준값, 평균 오차, 최상 오차 및 최저 오차 등을 저장해놓을 수도 있다.
마지막으로 예측부(170)는 학습부(160)에서 학습된 복수의 오토인코더 모델로 구축된 앙상블 네트워크에 예측 대상 데이터를 입력하여 비정상 여부를 예측할 수 있다(S680).
구체적으로 단계(S380)는 다음과 같이 수행될 수 있다. 먼저 예측부(170)는 복수의 오토인코더 모델을 이용하여 예측 대상 데이터에 대한 복원 오차를 각각 계산한다. 그리고 예측부(170)는 복수의 오토인코더 모델 중에서 복원 오차가 가장 작게 계산된 오토인코더 모델을 선택할 수 있다. 최종적으로 예측부(170)는 선택된 오토인코더 모델에 미리 설정된 기준 오차와 선택된 오토인코더 모델에서 계산된 복원 오차를 비교하여 예측 대상 데이터의 비정상 여부를 예측 결과를 출력할 수 있다. 여기서 미리 설정된 기준 오차는 복수의 오토인코더 모델을 학습시키는 동안 각 오토인코더 모델 별로 구해지는 최상 오차일 수 있다. 물론 실시예에 따라서 대응하는 군집에 속하는 데이터로 학습시키는 단계에서 구해지는 오차에 기반하여 기준 오차가 미리 설정될 수 있다. 각 오토인코더 모델 별로 구해지는 오차의 분산 기반의 기준값, 평균 오차, 최상 오차 또는 최저 오차 등이 기준 오차로 미리 설정될 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 인스트럭션(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨팅 장치 또는 특수 목적 컴퓨팅 장치를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 인스트럭션(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
Claims (14)
- 컴퓨팅 시스템에 의해 각 단계가 수행되는 오토인코더 앙상블 기반 이상행위 탐지 방법에 있어서,수집부가 네트워크 패킷 데이터를 변환한 로그 데이터에서 학습에 필요한 데이터를 수집하는 단계,분포 파악부가 상기 수집된 데이터의 분포를 파악하는 단계,군집화부가 상기 파악된 데이터 분포에 기초하여 상기 수집된 데이터를 군집화하는 단계,학습부가 상기 수집된 데이터를 군집화한 수만큼 복수의 오토인코더 모델을 생성하는 단계,상기 학습부가 상기 생성된 복수의 오토인코더 모델을 대응하는 군집에 속하는 데이터로 학습시키는 단계,예측부가 상기 복수의 오토인코더 모델에 예측 대상 데이터를 입력하여 복원 오차를 계산하는 단계,상기 예측부가 상기 복수의 오토인코더 모델 중에서 복원 오차가 가장 작게 계산된 오토인코더 모델을 선택하는 단계,상기 예측부가 상기 선택된 오토인코더 모델에 미리 설정된 기준 오차와 상기 선택된 오토인코더 모델에서 계산된 복원 오차를 비교하여 상기 예측 대상 데이터의 비정상 여부를 예측하는 단계를 포함하고,상기 선택된 오토인코더 모델에 미리 설정된 기준 오차는,상기 대응하는 군집에 속하는 데이터로 학습시키는 단계에서 구해지는 오차에 기반하여 정해지는 방법.
- 제 1 항에서,상기 선택된 오토인코더 모델에 미리 설정된 기준 오차는,상기 대응하는 군집에 속하는 데이터로 학습시키는 단계에서 구해지는 오차의 분산 기반의 기준값, 평균 오차, 최상 오차 및 최저 오차 중 어느 하나로 정해지는 방법.
- 컴퓨팅 시스템에 의해 각 단계가 수행되는 오토인코더 앙상블 기반 이상행위 탐지 방법에 있어서,수집부가 네트워크 패킷 데이터를 변환한 로그 데이터에서 학습에 필요한 데이터를 수집하는 단계,분포 파악부가 상기 수집된 데이터의 분포를 파악하는 단계,군집화부가 상기 파악된 데이터 분포에 기초하여 상기 수집된 데이터를 군집화하는 단계,학습부가 상기 수집된 데이터를 군집화한 수만큼 복수의 오토인코더 모델을 생성하는 단계,상기 학습부가 상기 생성된 복수의 오토인코더 모델을 대응하는 군집에 속하는 데이터로 학습시키는 단계,예측부가 상기 복수의 오토인코더 모델에 예측 대상 데이터를 입력하여 복원 오차를 계산하는 단계,상기 예측부가 상기 복수의 오토인코더 모델 중에서 복원 오차가 가장 작게 계산된 오토인코더 모델을 선택하는 단계,상기 예측부가 상기 선택된 오토인코더 모델에 미리 설정된 기준 오차와 상기 선택된 오토인코더 모델에서 계산된 복원 오차를 비교하여 상기 예측 대상 데이터의 비정상 여부를 예측하는 단계를 포함하고,상기 로그 데이터에서 학습에 필요한 데이터를 수집하는 단계는,상기 변환된 복수 줄의 로그 데이터를 미리 정해진 시간 구간마다 집합하여 한 줄의 데이터로 표현하되, 숫자 데이터는 각 변수의 통계를 구해서 표현하는 방법.
- 제 3 항에서,상기 숫자 데이터는 상기 각 변수의 평균, 변화량 및 분산 중 적어도 하나의 통계값으로 표현하는 방법.
- 제 1 항 또는 제 3 항에서,상기 수집된 데이터를 미리 정해진 방법으로 전처리한 후 상기 수집된 데이터의 분포를 파악하는 방법.
- 제 1 항 또는 제 3 항에서,VAE(Variational AutoEncoder)를 이용하여 상기 수집된 데이터의 분포를 파악하는 방법.
- 제 1 항 또는 제 3 항에서,상기 선택된 오토인코더 모델에 미리 설정된 기준 오차는,상기 생성된 복수의 오토인코더 모델을 대응하는 군집에 속하는 데이터로 학습시키는 단계에서 구해지는 최상 오차로 정해지는 방법.
- 오토인코더 앙상블 기반 이상행위 탐지 시스템에 있어서,네트워크 패킷 데이터를 변환한 로그 데이터에서 학습에 필요한 데이터를 수집하는 수집부,상기 수집된 데이터의 분포를 파악하는 분포 파악부,상기 파악된 데이터 분포에 기초하여 상기 수집된 데이터를 군집화하는 군집화부,상기 수집된 데이터를 군집화한 수만큼 복수의 오토인코더 모델을 생성하고, 상기 생성된 복수의 오토인코더 모델을 대응하는 군집에 속하는 데이터로 학습시키는 학습부, 그리고상기 복수의 오토인코더 모델에 예측 대상 데이터를 입력하여 복원 오차를 계산하고, 상기 복수의 오토인코더 모델 중에서 복원 오차가 가장 작게 계산된 오토인코더 모델을 선택하며, 상기 선택된 오토인코더 모델에 미리 설정된 기준 오차와 상기 선택된 오토인코더 모델에서 계산된 복원 오차를 비교하여 상기 예측 대상 데이터의 비정상 여부를 예측하는 예측부를 포함하고,상기 선택된 오토인코더 모델에 미리 설정된 기준 오차는,상기 대응하는 군집에 속하는 데이터로 학습시키는 단계에서 구해지는 오차에 기반하여 정해지는 시스템.
- 제 8 항에서,상기 선택된 오토인코더 모델에 미리 설정된 기준 오차는,상기 대응하는 군집에 속하는 데이터로 학습시키는 단계에서 구해지는 오차의 분산 기반의 기준값, 평균 오차, 최상 오차 및 최저 오차 중 어느 하나로 정해지는 방법.
- 오토인코더 앙상블 기반 이상행위 탐지 시스템에 있어서,네트워크 패킷 데이터를 변환한 로그 데이터에서 학습에 필요한 데이터를 수집하는 수집부,상기 수집된 데이터의 분포를 파악하는 분포 파악부,상기 파악된 데이터 분포에 기초하여 상기 수집된 데이터를 군집화하는 군집화부,상기 수집된 데이터를 군집화한 수만큼 복수의 오토인코더 모델을 생성하고, 상기 생성된 복수의 오토인코더 모델을 대응하는 군집에 속하는 데이터로 학습시키는 학습부, 그리고상기 복수의 오토인코더 모델에 예측 대상 데이터를 입력하여 복원 오차를 계산하고, 상기 복수의 오토인코더 모델 중에서 복원 오차가 가장 작게 계산된 오토인코더 모델을 선택하며, 상기 선택된 오토인코더 모델에 미리 설정된 기준 오차와 상기 선택된 오토인코더 모델에서 계산된 복원 오차를 비교하여 상기 예측 대상 데이터의 비정상 여부를 예측하는 예측부를 포함하고,상기 수집부는,상기 변환된 복수 줄의 로그 데이터를 미리 정해진 시간 구간마다 집합하여 한 줄의 데이터로 표현하되, 숫자 데이터는 각 변수의 통계를 구해서 표현하는 시스템.
- 제 10 항에서,상기 숫자 데이터는 상기 각 변수의 평균, 변화량 및 분산 중 적어도 하나의 통계값으로 표현하는 시스템.
- 제 8 항 또는 제 10 항에서,상기 수집된 데이터를 미리 정해진 방법으로 전처리하는 전처리부를 더 포함하고,상기 분포 파악부는,상기 미리 정해진 방법으로 전처리된 수집된 데이터의 분포를 파악하는 시스템.
- 제 8 항 또는 제 10 항에서,상기 분포 파악부는,VAE(Variational AutoEncoder)를 이용하여 상기 수집된 데이터의 분포를 파악하는 시스템.
- 제 8 항 또는 제 10 항에서,상기 예측부는,상기 예측 대상 데이터에 대해 상기 선택된 오토인코더 모델에서 계산된 복원 오차가 상기 선택된 오토인코더 모델에 미리 설정된 기준 오차보다 큰 경우 비정상 데이터로 예측하는 시스템.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210040275A KR102572192B1 (ko) | 2021-03-29 | 2021-03-29 | 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템 |
KR10-2021-0040275 | 2021-03-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022211301A1 true WO2022211301A1 (ko) | 2022-10-06 |
Family
ID=83457626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2022/003360 WO2022211301A1 (ko) | 2021-03-29 | 2022-03-10 | 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102572192B1 (ko) |
WO (1) | WO2022211301A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117891214A (zh) * | 2023-12-28 | 2024-04-16 | 北京科技大学 | 云边端协同下热连轧过程监测与故障诊断方法及装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102681431B1 (ko) * | 2023-10-05 | 2024-07-04 | (주)메디띵스 | 방광 모니터링 기기의 이상 탐지 방법 및 시스템 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150037285A (ko) * | 2013-09-30 | 2015-04-08 | 한국전력공사 | 침입 탐지 장치 및 방법 |
KR101888683B1 (ko) * | 2017-07-28 | 2018-08-14 | 펜타시큐리티시스템 주식회사 | 비정상 트래픽을 탐지하는 방법 및 장치 |
KR102181762B1 (ko) * | 2020-05-25 | 2020-11-24 | 서울시립대학교 산학협력단 | 적대적 오토 인코더 기반 이상 데이터 검출 장치 |
KR102281819B1 (ko) * | 2019-10-01 | 2021-07-26 | 주식회사 씨티아이랩 | 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190107523A (ko) * | 2018-03-12 | 2019-09-20 | 주식회사 케이티 | 시스템 로그 정보를 이용하는 네트워크 장애 처리 시스템 및 방법 |
KR101988028B1 (ko) | 2018-09-04 | 2019-06-11 | 넷마블 주식회사 | 서버 및 이의 동작 방법 |
-
2021
- 2021-03-29 KR KR1020210040275A patent/KR102572192B1/ko active IP Right Grant
-
2022
- 2022-03-10 WO PCT/KR2022/003360 patent/WO2022211301A1/ko active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150037285A (ko) * | 2013-09-30 | 2015-04-08 | 한국전력공사 | 침입 탐지 장치 및 방법 |
KR101888683B1 (ko) * | 2017-07-28 | 2018-08-14 | 펜타시큐리티시스템 주식회사 | 비정상 트래픽을 탐지하는 방법 및 장치 |
KR102281819B1 (ko) * | 2019-10-01 | 2021-07-26 | 주식회사 씨티아이랩 | 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템 |
KR102181762B1 (ko) * | 2020-05-25 | 2020-11-24 | 서울시립대학교 산학협력단 | 적대적 오토 인코더 기반 이상 데이터 검출 장치 |
Non-Patent Citations (1)
Title |
---|
CHANG CHUN-PI; HSU WEN-CHIAO; LIAO I-EN: "Anomaly Detection for Industrial Control Systems Using K-Means and Convolutional Autoencoder", 2019 INTERNATIONAL CONFERENCE ON SOFTWARE, TELECOMMUNICATIONS AND COMPUTER NETWORKS (SOFTCOM), UNIVERSITY OF SPLIT, FESB, 19 September 2019 (2019-09-19), pages 1 - 6, XP033661880, DOI: 10.23919/SOFTCOM.2019.8903886 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117891214A (zh) * | 2023-12-28 | 2024-04-16 | 北京科技大学 | 云边端协同下热连轧过程监测与故障诊断方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
KR20220134954A (ko) | 2022-10-06 |
KR102572192B1 (ko) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102281819B1 (ko) | 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템 | |
WO2022211301A1 (ko) | 오토인코더 앙상블 기반 이상행위 탐지 방법 및 시스템 | |
WO2022191596A1 (ko) | 오토프로파일링 기반 네트워크 패킷 이상행위 자동 탐지 장치 및 방법 | |
CN108965340B (zh) | 一种工业控制系统入侵检测方法及系统 | |
CN112491796A (zh) | 一种基于卷积神经网络的入侵检测及语义决策树量化解释方法 | |
CN112905421A (zh) | 基于注意力机制的lstm网络的容器异常行为检测方法 | |
WO2023287064A1 (ko) | 이상 데이터 자동 검출 및 자동 라벨링 기술을 이용한 학습 데이터베이스 구축 방법 및 시스템 | |
CN112491854B (zh) | 一种基于fcnn的多方位安全入侵检测方法及系统 | |
WO2017131263A1 (ko) | 교차 프로젝트 결함 예측을 위한 최단 이웃점을 이용한 하이브리드 인스턴스 선택 방법 | |
WO2021107422A1 (ko) | 에너지 사용량 데이터의 비지도 학습 기반 부하 모니터링 방법 | |
CN113595998A (zh) | 基于Bi-LSTM的电网信息系统漏洞攻击检测方法及装置 | |
WO2023096185A1 (ko) | 딥 러닝 기반으로 음향 및 진동을 이용하여 기계의 고장을 진단하는 방법 및 이를 이용한 진단 장치 | |
CN108920958A (zh) | 检测pe文件异常行为的方法、装置、介质及设备 | |
CN113746780A (zh) | 基于主机画像的异常主机检测方法、装置、介质和设备 | |
CN115913710A (zh) | 异常检测方法、装置、设备及存储介质 | |
CN114416479A (zh) | 一种基于流外正则化的日志序列异常检测方法 | |
WO2020091259A1 (ko) | 비대칭 tanh 활성 함수를 이용한 예측 성능의 개선 | |
CN118300860A (zh) | 一种基于机器学习和高级语义映射的电力网络异常检测系统 | |
CN117851945A (zh) | 一种银行系统的应用日志异常检测方法、装置及介质 | |
WO2023128320A1 (ko) | 인공지능 검증 시스템 및 방법 | |
CN115328753B (zh) | 一种故障预测方法及装置、电子设备、存储介质 | |
WO2023106466A1 (ko) | 학습 클라우드 유형 기반의 인공지능 클라우드 학습장치 및 방법 | |
CN116776331A (zh) | 基于用户行为建模的内部威胁检测方法及装置 | |
KR20230000376A (ko) | 인공지능을 이용한 보안관제 침입탐지 알람 처리 장치 및 방법 | |
CN114385398A (zh) | 一种请求响应状态确定方法、装置、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22781422 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 21/02/2024) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22781422 Country of ref document: EP Kind code of ref document: A1 |