KR101927100B1 - Method for analyzing risk element of network packet based on recruuent neural network and apparatus analyzing the same - Google Patents

Method for analyzing risk element of network packet based on recruuent neural network and apparatus analyzing the same Download PDF

Info

Publication number
KR101927100B1
KR101927100B1 KR1020160134556A KR20160134556A KR101927100B1 KR 101927100 B1 KR101927100 B1 KR 101927100B1 KR 1020160134556 A KR1020160134556 A KR 1020160134556A KR 20160134556 A KR20160134556 A KR 20160134556A KR 101927100 B1 KR101927100 B1 KR 101927100B1
Authority
KR
South Korea
Prior art keywords
packet
neural network
risk
session
data characteristic
Prior art date
Application number
KR1020160134556A
Other languages
Korean (ko)
Other versions
KR20180042019A (en
Inventor
윤상민
원용욱
Original Assignee
국민대학교산학협력단
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 국민대학교산학협력단 filed Critical 국민대학교산학협력단
Priority to KR1020160134556A priority Critical patent/KR101927100B1/en
Publication of KR20180042019A publication Critical patent/KR20180042019A/en
Application granted granted Critical
Publication of KR101927100B1 publication Critical patent/KR101927100B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0445
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 순환 신경망 기반 네트워크 패킷의 위험요소 분석 기술에 관한 것으로, 송신단으로부터 세션에 있는 연속적인 제1 및 제2 패킷들을 입력받는 패킷 입력부, 상기 제1 패킷에 순환 신경망 모델을 적용하여 다음 패킷의 데이터 특성을 예측하고 상기 다음 패킷의 데이터 특성과 상기 제2 패킷의 데이터 특성 간의 유사도를 기초로 위험요소를 결정하는 제1 위험요소 결정부, 상기 유사도가 특정 기준 이하이면 상기 제2 패킷에 관한 위험성 분석을 수행하여 상기 위험요소를 재결정하는 제2 위험요소 결정부 및 상기 재결정이 진행되면 상기 제2 패킷에 관해 순환 신경망 학습을 수행하여 상기 순환 신경망 모델을 갱신하는 순환 신경망 학습부를 포함한다.The present invention relates to a technology for analyzing a risk of a network packet based on a cyclic neural network, comprising: a packet input unit for receiving successive first and second packets from a transmitting end in a session; A first risk factor determiner for predicting a data characteristic and determining a risk factor based on a degree of similarity between a data characteristic of the next packet and a data characteristic of the second packet; And a loop neural network learning unit for performing a loop neural network learning on the second packet when the re-crystallization proceeds, thereby updating the circular neural network model.

Description

순환 신경망 기반 네트워크 패킷의 위험요소 분석 방법, 이를 수행하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치{METHOD FOR ANALYZING RISK ELEMENT OF NETWORK PACKET BASED ON RECRUUENT NEURAL NETWORK AND APPARATUS ANALYZING THE SAME}TECHNICAL FIELD [0001] The present invention relates to a method of analyzing a risk of a network packet based on a cyclic neural network, and a cyclic neural network based network packet analyzing apparatus,

본 발명은 순환 신경망 기반 네트워크 패킷의 위험요소 분석 기술에 관한 것으로, 보다 상세하게는 각각의 장애상황들에 따른 순환 신경망 모델을 구현하고 학습하여 네트워크 패킷의 위험요소를 분석할 수 있는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치에 관한 것이다.The present invention relates to a technology for analyzing a risk of a network packet based on a cyclic neural network, and more particularly, to a technique for analyzing a risk of a network packet by implementing a circular neural network model according to each failure situation, And an apparatus for analyzing a risk of a packet.

종래의 네트워크 성능 및 장애감시 기술은 수신된 데이터의 크기 및 주파수 성분 모니터링을 통하여 전송성능 및 통신장애 유무만을 확인한다. 최근 사물인터넷(IoT, Internet of Things) 기반의 다양한 유무선 멀티미디어 서비스 출현으로 개방형 네트워크 형태로 진화함에 따라 바이러스 등과 같은 다양한 외부 침입으로부터의 위험이 지속적으로 증가하고 있다.Conventional network performance and failure monitoring techniques only check the transmission performance and the communication failure by monitoring the size and frequency component of the received data. Recently, due to the emergence of various types of wired and wireless multimedia services based on Internet of Things (IoT), the risk from various external intrusions such as viruses has been continuously increasing as it has evolved into an open network form.

차세대 네트워크 망의 물리계층은 사물인터넷 기반 유무선 멀티미디어 서비스를 수용하는 대용량 광링크를 이용할 가능성이 높기 때문에 대용량 데이터의 안정적인 전송을 위해서 네트워크 망의 실시간 성능 감시가 필요하다.Since the physical layer of the next generation network is highly likely to use a large capacity optical link accommodating the Internet based wired and wireless multimedia services, it is necessary to monitor the real time performance of the network in order to transmit the large amount of data stably.

한국공개특허 제10-2015-0110065호는 실행파일 모니터링 기반 악성코드 탐지 방법 및 시스템에 관한 것으로, 실행파일 모니터링 에이전트는 지역제어 네트워크 내부 또는 제어 센터와 지역제어 네트워크 사이에서 교환되는 패킷으로부터 실행파일 정보를 생성하여 악성코드 탐지 장치로 전송하고, 악성코드 탐지 장치는 수신된 실행파일 정보에 기초하여 해당 실행파일의 악성코드 감염 여부를 판단하는 기술을 개시한다.Korean Patent Laid-Open No. 10-2015-0110065 relates to a malicious code detection method and system based on executable file monitoring, wherein the executable file monitoring agent extracts executable file information from a packet exchanged between the control network and the local control network, And transmits the generated malicious code to the malicious code detection device, and the malicious code detection device starts a technique for determining whether the malicious code is infected with the execution file based on the received execution file information.

한국공개특허 제10-2011-0057628호는 네트워크 상에서 수집된 악성 파일 정보 기반의 연관성 분석 장치 및 방법에 관한 것으로, 네트워크 상에서 수집된 정보들과 악성 코드 전파 경로 기반의 시나리오 정의 테이블과 악성 코드 특성 기반의 연관성 정의 테이블간의 연관성 비교를 통해 악성 파일로 의심된 관심 파일을 찾아낸 후 악성 파일로 의심된 관심 파일의 정보를 기반으로 감염 단말, 유포 서버, 감시 정보, 공격 대상 서버 및 공격 상황 정보를 파악하는 기술을 개시한다.Korean Patent Laid-Open No. 10-2011-0057628 relates to an apparatus and method for analyzing a malicious file information-based association collected on a network, and relates to information collected on a network, a scenario definition table based on a malicious code propagation path, Of the attacked server, the attacked server, and the attacked state information based on the information of the suspected malicious file as a malicious file after comparing the associations between the tables. Technology.

한국공개특허 제10-2015-0110065호 (2015.10.02)Korean Patent Publication No. 10-2015-0110065 (Oct. 20, 2015) 한국공개특허 제10-2011-0057628호 (2011.06.01)Korean Patent Publication No. 10-2011-0057628 (June 1, 2011)

본 발명의 일 실시예는 각각의 장애상황들에 따른 순환 신경망 모델을 구현하고 데이터(또는 신호) 분석을 통해 학습된 순환 신경망 모델을 이용하여 네트워크 패킷의 위험요소를 분석할 수 있는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치를 제공하고자 한다.One embodiment of the present invention is to provide a cyclic neural network based network capable of analyzing the risk factors of network packets by implementing a circular neural network model according to each failure situation and using the learned circular neural network model through data (or signal) And to provide a device for analyzing the risk of a packet.

본 발명의 일 실시예는 각각의 장애상황들에 해당하는 순환 신경망 모델을 구현한 후 해당 네트워크가 구현된 순환 신경망 모델을 학습하게 할 수 있는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치를 제공하고자 한다.An embodiment of the present invention provides a device for analyzing a risk of a network packet based on a circular neural network capable of learning a circular neural network model in which a network is implemented after implementing a circular neural network model corresponding to each failure situation .

실시예들 중에서, 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치는 송신단으로부터 세션에 있는 연속적인 제1 및 제2 패킷들을 입력받는 패킷 입력부, 상기 제1 패킷에 순환 신경망 모델을 적용하여 다음 패킷의 데이터 특성을 예측하고 상기 다음 패킷의 데이터 특성과 상기 제2 패킷의 데이터 특성 간의 유사도를 기초로 위험요소를 결정하는 제1 위험요소 결정부, 상기 유사도가 특정 기준 이하이면 상기 제2 패킷에 관한 위험성 분석을 수행하여 상기 위험요소를 재결정하는 제2 위험요소 결정부 및 상기 재결정이 진행되면 상기 제2 패킷에 관해 순환 신경망 학습을 수행하여 상기 순환 신경망 모델을 갱신하는 순환 신경망 학습부를 포함한다.Among the embodiments, the apparatus for analyzing a network packet based on a cyclic-neural network includes a packet input unit for receiving first and second consecutive packets in a session from a transmitting end, a cyclic neural network model applied to the first packet, A first risk factor determiner for predicting a characteristic of the second packet and determining a risk factor based on a similarity between the data characteristic of the next packet and the data characteristic of the second packet; And a circular neural network learning unit for performing a circular neural network learning on the second packet when the recrystallization proceeds, thereby updating the circular neural network model.

상기 제1 위험요소 결정부는 상기 다음 패킷의 데이터 특성이 정상적인 것으로 예측되고 상기 유사도가 상기 특정 기준 이상이면 상기 세션을 안전한 것으로 결정할 수 있다.The first risk factor determiner may determine that the session is safe if the data characteristics of the next packet are predicted to be normal and the similarity is greater than or equal to the specific criterion.

상기 제1 위험요소 결정부는 상기 다음 패킷의 데이터 특성이 비정상적인 것으로 예측되고 상기 유사도가 상기 특정 기준 이상이면 상기 세션을 불안전한 것으로 결정할 수 있다. 상기 제1 위험요소 결정부는 상기 세션을 통해 과거의 특정 시간 동안 송수신되었던 패킷들에 관한 심층패킷분석(DPI, Deep Packet Inspection)을 수행하여 상기 세션을 검증할 수 있다.The first risk factor determiner may determine that the data characteristic of the next packet is predicted to be abnormal and that the session is unstable if the similarity is higher than the specific criterion. The first risk factor determiner may verify the session by performing Deep Packet Inspection (DPI) on the packets transmitted and received during a past specific time through the session.

상기 제2 위험요소 결정부는 상기 세션 전용의 가상 머신을 생성하고, 상기 가상 머신을 통해 상기 제1 및 제2 패킷들을 격리 실행하여 악성코드의 존재여부를 검출할 수 있다. 상기 제2 위험요소 결정부는 상기 격리 실행 전에 상기 가상 머신에 순환 신경망 학습 에이전트를 실행하여 상기 제2 패킷에 관한 데이터 특성을 추출할 수 있다.The second risk factor determiner may generate a virtual machine dedicated to the session, and may isolate the first and second packets through the virtual machine to detect the presence or absence of a malicious code. And the second risk factor determiner may execute a circular neural network learning agent in the virtual machine before executing the quarantine to extract data characteristics of the second packet.

상기 제2 위험요소 결정부는 상기 격리 실행 후에 상기 순환 신경망 학습 에이전트를 통해 상기 순환 신경망 학습부에 상기 악성코드의 존재여부와 상기 제2 패킷에 관한 데이터 특성을 제공할 수 있다. 상기 제2 위험요소 결정부는 상기 제1 및 제2 패킷들이 격리 실행될 때 나타나는 리소스 권한 요청내용 및 리소스 사용량 중 적어도 하나를 기초로 상기 악성코드가 존재할 가능성을 나타내는 악성코드 존재 확률을 산출할 수 있다. 상기 제2 위험요소 결정부는 상기 악성코드 존재 확률이 특정 기준을 초과하면 상기 악성코드가 존재하는 것으로 결정할 수 있다.The second risk factor determiner may provide the loop neural network learning unit with the existence of the malicious code and the data characteristic of the second packet through the loop neural network learning agent after the quarantine execution. The second risk determining unit may calculate a probability of existence of a malicious code indicating the possibility that the malicious code is present based on at least one of a resource permission request content and a resource usage amount appearing when the first and second packets are quarantined. The second risk determining unit may determine that the malicious code exists if the probability of existence of the malicious code exceeds a specific criterion.

상기 순환 신경망 학습부는 상기 다음 패킷의 데이터 특성의 예측을 위해 상기 제2 패킷과 상기 재결정된 위험요소를 기초로 지도 학습(supervised learning)을 수행할 수 있다. 상기 순환 신경망 학습부는 순환 신경망 학습 에이전트를 통해 상기 제2 패킷에 관한 데이터 특성과 상기 재결정된 위험요소로서 상기 제1 및 제2 패킷들에 악성코드가 존재하는지 여부를 수신하여 상기 지도 학습을 수행할 수 있다.The Cyclic Neural Network Learning Unit may perform supervised learning based on the second packet and the redetermined risk component for predicting the data characteristics of the next packet. Wherein the loop neural network learning unit receives the data characteristic of the second packet through the loop neural network learning agent and whether the malicious code exists in the first and second packets as the redetermined risk element, .

상기 데이터 특성은 상기 패킷에 포함된 데이터의 압축 비트맵에 해당할 수 있다.The data characteristic may correspond to a compressed bitmap of data included in the packet.

실시예들 중에서, 순환 신경망 기반 네트워크 패킷의 위험요소 분석 방법은 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치에서 수행된다. 상기 방법은 (a) 송신단으로부터 세션에 있는 연속적인 제1 및 제2 패킷들을 입력받는 단계, (b) 상기 제1 패킷에 순환 신경망 모델을 적용하여 다음 패킷의 데이터 특성을 예측하고 상기 다음 패킷의 데이터 특성과 상기 제2 패킷의 데이터 특성 간의 유사도를 기초로 위험요소를 결정하는 단계, (c) 상기 유사도가 특정 기준 이하이면 상기 제2 패킷에 관한 위험성 분석을 수행하여 상기 위험요소를 재결정하는 단계 및 (d) 상기 재결정이 진행되면 상기 제2 패킷에 관해 순환 신경망 학습을 수행하여 상기 순환 신경망 모델을 갱신하는 단계를 포함한다.Among the embodiments, a method for analyzing a risk of a network packet based on a circular neural network is performed in a risk analyzing apparatus for a network packet based on a circular neural network. The method comprises the steps of: (a) receiving first and second consecutive packets in a session from a transmitting end; (b) applying a circular neural network model to the first packet to predict data characteristics of the next packet, Determining a risk factor based on a degree of similarity between a data characteristic and a data characteristic of the second packet; (c) if the similarity is less than a specific criterion, performing a risk analysis on the second packet to re- And (d) performing recurrent neural network learning on the second packet when the recrystallization proceeds, thereby updating the circular neural network model.

상기 (b) 단계는 상기 다음 패킷의 데이터 특성이 정상적인 것으로 예측되고 상기 유사도가 상기 특정 기준 이상이면 상기 세션을 안전한 것으로 결정하는 단계를 포함할 수 있다.The step (b) may include determining that the data characteristic of the next packet is normal and that the session is secure if the similarity is greater than the specific criterion.

상기 (b) 단계는 상기 다음 패킷의 데이터 특성이 비정상적인 것으로 예측되고 상기 유사도가 상기 특정 기준 이상이면 상기 세션을 불안전한 것으로 결정하는 단계를 포함할 수 있다. 상기 (b) 단계는 상기 세션을 통해 과거의 특정 시간 동안 송수신되었던 패킷들에 관한 심층패킷분석(DPI, Deep Packet Inspection)을 수행하여 상기 세션을 검증하는 단계를 더 포함할 수 있다.The step (b) may include determining that the data characteristic of the next packet is predicted to be abnormal and the session is unstable if the similarity is greater than the specific criterion. The step (b) may further include a step of performing Deep Packet Inspection (DPI) on packets that have been transmitted and received during a specific time in the past through the session to verify the session.

상기 (c) 단계는 상기 세션 전용의 가상 머신을 생성하고, 상기 가상 머신을 통해 상기 제1 및 제2 패킷들을 격리 실행하여 악성코드의 존재여부를 검출하는 단계를 포함할 수 있다. 상기 (c) 단계는 상기 격리 실행 전에 상기 가상 머신에 순환 신경망 학습 에이전트를 실행하여 상기 제2 패킷에 관한 데이터 특성을 추출하는 단계를 더 포함할 수 있다.The step (c) may include generating a virtual machine dedicated to the session, and isolating the first and second packets through the virtual machine to detect the presence or absence of the malicious code. The step (c) may further include the step of executing a circular neural network learning agent in the virtual machine before executing the isolation to extract data characteristics of the second packet.

상기 (d) 단계는 상기 다음 패킷의 데이터 특성의 예측을 위해 상기 제2 패킷과 상기 재결정된 위험요소를 기초로 지도 학습(supervised learning)을 수행하는 단계를 포함할 수 있다. 상기 (d) 단계는 순환 신경망 학습 에이전트를 통해 상기 제2 패킷에 관한 데이터 특성과 상기 재결정된 위험요소로서 상기 제1 및 제2 패킷들에 악성코드가 존재하는지 여부를 수신하여 상기 지도 학습을 수행하는 단계를 더 포함할 수 있다.The step (d) may include performing supervised learning based on the second packet and the redetermined risk element for prediction of a data characteristic of the next packet. The step (d) includes receiving data characteristics of the second packet through the CNN learning agent and whether the malicious code exists in the first and second packets as the re-determined risk element, The method comprising the steps of:

개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technique may have the following effects. It is to be understood, however, that the scope of the disclosed technology is not to be construed as limited thereby, as it is not meant to imply that a particular embodiment should include all of the following effects or only the following effects.

본 발명의 일 실시예에 따른 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치는 각각의 장애상황들에 따른 순환 신경망 모델을 구현하고 데이터(또는 신호) 분석을 통해 학습된 순환 신경망 모델을 이용하여 네트워크 패킷의 위험요소를 분석할 수 있다.The apparatus for analyzing a network packet based on a cyclic neural network according to an embodiment of the present invention realizes a cyclic neural network model according to each fault situation and uses a cyclic neural network model learned through data (or signal) The risk factors of

본 발명의 일 실시예에 따른 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치는 각각의 장애상황들에 해당하는 순환 신경망 모델을 구현한 후 해당 네트워크가 구현된 순환 신경망 모델을 학습하게 할 수 있다.The apparatus for analyzing the risk of a network packet based on a cyclic neural network according to an embodiment of the present invention can implement a cyclic neural network model corresponding to each fault situation and then learn a cyclic neural network model in which the network is implemented.

도 1은 본 발명의 일 실시예에 따른 순환 신경망 기반 네트워크 패킷의 위험요소 분석 시스템을 설명하는 도면이다.
도 2는 도 1에 있는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치를 설명하는 블록도이다.
도 3은 순환 신경망 기반 네트워크 패킷의 위험요소 분석 과정을 상세하게 설명하는 순서도이다.
도 4는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 과정을 요약적으로 설명하는 순서도이다.
1 is a view for explaining a risk element analysis system of a network packet based on a cyclic neural network according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating an apparatus for analyzing a risk of a network packet based on a cyclic-neural network in FIG.
FIG. 3 is a flowchart illustrating in detail a risk element analysis process of a network packet based on a circular neural network.
4 is a flow chart for explaining a risk analysis process of a network packet based on a circular neural network.

본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The description of the present invention is merely an example for structural or functional explanation, and the scope of the present invention should not be construed as being limited by the embodiments described in the text. That is, the embodiments are to be construed as being variously embodied and having various forms, so that the scope of the present invention should be understood to include equivalents capable of realizing technical ideas. Also, the purpose or effect of the present invention should not be construed as limiting the scope of the present invention, since it does not mean that a specific embodiment should include all or only such effect.

한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Meanwhile, the meaning of the terms described in the present application should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.The terms "first "," second ", and the like are intended to distinguish one element from another, and the scope of the right should not be limited by these terms. For example, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" to another element, it may be directly connected to the other element, but there may be other elements in between. On the other hand, when an element is referred to as being "directly connected" to another element, it should be understood that there are no other elements in between. On the other hand, other expressions that describe the relationship between components, such as "between" and "between" or "neighboring to" and "directly adjacent to" should be interpreted as well.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.It is to be understood that the singular " include " or "have" are to be construed as including the stated feature, number, step, operation, It is to be understood that the combination is intended to specify that it does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, the identification code (e.g., a, b, c, etc.) is used for convenience of explanation, the identification code does not describe the order of each step, Unless otherwise stated, it may occur differently from the stated order. That is, each step may occur in the same order as described, may be performed substantially concurrently, or may be performed in reverse order.

본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한, 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be embodied as computer-readable code on a computer-readable recording medium, and the computer-readable recording medium includes all kinds of recording devices for storing data that can be read by a computer system . Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and also implemented in the form of a carrier wave (for example, transmission over the Internet) . In addition, the computer-readable recording medium may be distributed over network-connected computer systems so that computer readable codes can be stored and executed in a distributed manner.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Commonly used predefined terms should be interpreted to be consistent with the meanings in the context of the related art and can not be interpreted as having ideal or overly formal meaning unless explicitly defined in the present application.

도 1은 본 발명의 일 실시예에 따른 순환 신경망 기반 네트워크 패킷의 위험요소 분석 시스템을 설명하는 도면이다.1 is a view for explaining a risk element analysis system of a network packet based on a cyclic neural network according to an embodiment of the present invention.

도 1을 참조하면, 순환 신경망 기반 네트워크 패킷의 위험요소 분석 시스템(100)는 송신단(110), 수신단(120) 및 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치(130)를 포함한다.Referring to FIG. 1, the RNetwork-based network packet risk analysis system 100 includes a transmitting end 110, a receiving end 120, and a risk analysis device 130 of a circular network-based network packet.

송신단(OLT, Optical Line, Terminal)(110)은 통신 사업자에서 관리될 수 있는 송신 단말로, 예를 들어, 광 회선 단말로 패킷 교환 공중 데이터 망(PSPDN)에서 인터페이스 기능과 같은 광대역 서비스 접속 기능을 제공할 수 있다. 송신단(110)은 네트워크 망의 데이터(신호)를 수신단(120)으로 송신할 수 있다.(OLT) 110 is a transmission terminal that can be managed by a communication service provider, for example, a broadband service connection function such as an interface function in a packet switched public data network (PSPDN) to an optical line terminal . The transmitting terminal 110 can transmit data (signal) of the network to the receiving terminal 120.

수신단(ONU, Optical Network Unit)(120)은 통신 서비스 수요자를 위한 수신 단말로, 예를 들어, 광망 종단 장치로 광통신망에서 광섬유를 통해 수신된 광신호를 전기신호로 변환하여 주고 사용자의 전기신호를 광신호로 변환시켜 줄 수 있다. 수신단(120)은 송신단(110)으로부터 데이터(신호)를 수신할 수 있다.The optical network unit (ONU) 120 is a receiving terminal for a communication service user, for example, a light network terminating apparatus that converts an optical signal received through an optical fiber in an optical communication network into an electrical signal, Can be converted into an optical signal. The receiving end 120 can receive data (signal) from the transmitting end 110.

순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치(130)는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 서버를 구축하여 송신단(110)과 수신단(120) 사이에 위치되고, 송신단(110)에서 송신되는 데이터(신호)를 순환 신경망 모델을 통해 분석하여 바이러스 및 악성코드 등과 같은 위험요소를 검출할 수 있다. 여기에서, 순환 신경망(RNN, Recurrent Neural Network)은 인공 신경망(ANN, Artificial Neural Network)을 구성하는 유닛 사이의 연결이 방향성 사이클을 구성하는 신경망으로, 보다 구체적으로, 순환 신경망은 내부에 루프를 가진 네트워크를 의미하고, 송신단(110)에서 송신되는 데이터(신호)를 통해 루프를 끊임없이 갱신시킬 수 있다.The risk analysis device 130 of the network packet based on the Cyclic Neural Network constructs a risk analysis server of the network packet based on the Cyclic Neural Network and transmits the data transmitted from the transmitting end 110, which is located between the transmitting end 110 and the receiving end 120, Signal) can be analyzed through a circular neural network model to detect dangerous elements such as viruses and malicious codes. Here, a Recurrent Neural Network (RNN) is a neural network in which a connection between units constituting an artificial neural network (ANN) constitutes a directional cycle. More specifically, a circular neural network has a loop Network, and can continuously update the loop through the data (signal) transmitted from the transmitting terminal 110. [

일 실시예에서, 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치(130)는 소프트웨어 기반 개방형 네트워크 망의 물리계층을 이용하여 각각의 장애상황에 따른 순환 신경망 모델을 구현할 수 있다. 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치(130)는 구현된 순환 신경망 모델을 네트워크 망의 송신단(110)과 수신단(120)에 적용하여 각각의 장애상황에 따른 패턴 학습을 수행할 수 있다. 보다 구체적으로, 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치(130)는 수신단(120)에서 수신된 데이터(신호)를 분석하고, 분석된 데이터(신호)를 학습된 순환 신경망 모델과 비교하여 바이러스 및 악성코드 등과 같은 위험요소를 검출할 수 있고, 전송성능 열화 또는 장애를 실시간으로 분석하고 감시를 수행할 수 있다.In one embodiment, the risk analysis device 130 of the network packet based on the cyclic neural network can implement a circular neural network model according to each fault situation using the physical layer of the software-based open network. The risk analysis device 130 of the network packet based on the cyclic neural network can apply the implemented cyclic neural network model to the transmission terminal 110 and the reception terminal 120 of the network to perform pattern learning according to each fault situation. More specifically, the apparatus for analyzing the network packet based on the cyclic neural network analyzes the data (signal) received at the receiving end 120, compares the analyzed data (signal) with the learned cyclic neural network model, Malicious code, and the like, and it is possible to analyze transmission performance degradation or failure in real time and perform monitoring.

도 2는 도 1에 있는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치를 설명하는 블록도이다.FIG. 2 is a block diagram illustrating an apparatus for analyzing a risk of a network packet based on a cyclic-neural network in FIG.

도 2를 참조하면, 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치(130)는 패킷 입력부(210), 제1 위험요소 결정부(220), 제2 위험요소 결정부(230), 순환 신경망 학습부(240) 및 제어부(250)를 포함한다.Referring to FIG. 2, the apparatus for analyzing a network packet based on a cyclic-neural network includes a packet input unit 210, a first risk determining unit 220, a second risk determining unit 230, (240) and a control unit (250).

패킷 입력부(210)는 송신단(110)과 수신단(120) 사이에 위치할 수 있고, 송신단(110)으로부터 세션에 있는 연속적인 제1 및 제2 패킷들을 입력 받을 수 있다. 일 실시예에서, 패킷 입력부(210)는 송신단(110)에서 수신단(120)으로 송신되는 연속적인 데이터(신호)를 입력 받을 수 있다. 다른 일 실시예에서, 패킷 입력부(210)는 송수신되는 연속적인 데이터(신호)를 복사하여 위험요소를 검출할 수 있다.The packet input unit 210 may be located between the transmitting terminal 110 and the receiving terminal 120 and may receive the first and second consecutive packets in the session from the transmitting terminal 110. In one embodiment, the packet input unit 210 may receive continuous data (signals) transmitted from the transmitting terminal 110 to the receiving terminal 120. In another embodiment, the packet input unit 210 may copy the continuous data (signal) transmitted and received to detect a dangerous element.

제1 위험요소 결정부(220)는 패킷 입력부(210)를 통해 입력 받은 제1 패킷에 순환 신경망 모델{RNN_h}을 적용하여 다음 패킷의 데이터 특성을 예측할 수 있고, 여기에서, 데이터 특성은 패킷에 포함된 데이터의 압축 비트맵에 해당할 수 있고, 압축 비트맵은 해시코드(Hash Code)를 압축하거나 비트 테이블 등과 같이 일부 데이터를 추출하고 압축함으로써 생성될 수 있다. 제1 위험요소 결정부(220)는 예측된 다음 패킷의 데이터 특성과 제2 패킷의 데이터 특성을 비교하여 유사도를 산출할 수 있고, 산출된 유사도를 기초로 위험요소를 결정할 수 있다. The first risk factor determining unit 220 may apply the rotation neural network {RNN_ h} to the first packet received through the packet input unit 210 to predict the data attribute of the next packet, where the data characteristics are packet , And the compressed bitmap can be generated by compressing a hash code or extracting and compressing some data such as a bit table or the like. The first risk factor determiner 220 may calculate the similarity by comparing the data characteristic of the predicted next packet with the data characteristic of the second packet and may determine the risk factor based on the calculated similarity.

제1 위험요소 결정부(220)는 다음 패킷의 정상여부를 예측할 수 있고, 다음 패킷의 데이터 특성과 제2 패킷의 데이터 특성 간의 유사도에 따라 세션의 상태를 결정할 수 있다. 일 실시예에서, 제1 위험요소 결정부(220)는 다음 패킷의 데이터 특성이 정상적인 것으로 예측되고 제2 패킷의 데이터 특성과의 유사도가 특정 기준 이상이면 세션을 안전한 것으로 결정할 수 있다. The first risk determining unit 220 can determine whether the next packet is normal or not and can determine the state of the session according to the similarity between the data characteristic of the next packet and the data characteristic of the second packet. In one embodiment, the first risk factor determiner 220 may determine that the session is secure if the data characteristic of the next packet is predicted to be normal and the similarity with the data characteristic of the second packet is more than a specific criterion.

다른 일 실시예에서, 제1 위험요소 결정부(220)는 다음 패킷의 데이터 특성이 비정상인 것으로 예측되고 제2 패킷의 데이터 특성과의 유사도가 특정 기준 이상이면 세션을 불안전한 것으로 결정할 수 있다. 보다 구체적으로, 제1 위험요소 결정부(220)는 다음 패킷의 데이터 특성이 비정상적인 것으로 예측되면 세션을 통해 과거의 특정 시간 동안 송수신되었던 패킷들에 관한 심층패킷분석을 수행하여 세션을 검증할 수 있다. 여기에서, 심층패킷분석(DPI, Deep Packet Inspection)은 인터넷을 통해 전송되는 데이터, 즉 패킷의 실제 내용까지 파악하고 분석하는 기술을 말한다. 예를 들어, 제1 위험요소 결정부(220)는 해당 세션에서 과거 1주일 동안 송수신되었던 패킷들을 수집할 수 있고, 수집된 패킷들을 심층적으로 분석하여 해당 세션 검증을 수행할 수 있다. 이러한 과정을 통해 제1 위험요소 결정부(220)는 다음 패킷의 데이터 특성이 비정상으로 예측되더라도 심층패킷분석 결과를 기초로 세션을 안전한 것으로 결정할 수 있다.In another embodiment, the first risk factor determination unit 220 can determine that the data quality of the next packet is predicted to be abnormal, and that the session is unstable if the degree of similarity with the data characteristic of the second packet is higher than a specific criterion. More specifically, if the data characteristic of the next packet is predicted to be abnormal, the first risk factor determination unit 220 may perform a deep packet analysis on packets that were transmitted and received during a specific time in the past through the session to verify the session . Here, Deep Packet Inspection (DPI) is a technique for grasping and analyzing data transmitted through the Internet, that is, the actual contents of a packet. For example, the first risk determining unit 220 may collect packets transmitted and received during the past one week in the session, and may analyze the collected packets in depth to perform the corresponding session verification. Through this process, the first risk factor determiner 220 can determine that the session is secure based on the in-depth packet analysis result even if the data characteristic of the next packet is predicted to be abnormal.

제2 위험요소 결정부(230)는 다음 패킷의 데이터 특성과 제2 패킷의 데이터 특성 간의 유사도가 특정 기준 이하이면 제2 패킷에 관한 위험성 분석을 수행하여 위험요소를 재결정할 수 있고, 제2 위험요소 결정부(230)는 위험요소를 재결정하기 위하여 세션 전용의 가상 머신{VM_s}을 생성할 수 있다.If the similarity between the data characteristic of the next packet and the data characteristic of the second packet is less than a specific criterion, the second risk factor determiner 230 can perform a risk analysis on the second packet to redetermine the risk factor, factor determining unit 230 may create a virtual machine VM_ {s} of the session only to recrystallization the risk.

제2 위험요소 결정부(230)는 생성된 가상 머신{VM_s}을 통해 제1 및 제2 패킷들을 격리하여 실행할 수 있고, 이러한 격리 실행과정을 통해 제2 위험요소 결정부(230)는 악성코드의 존재여부를 검출할 수 있다. 일 실시예에서, 제2 위험요소 결정부(230)는 제1 패킷과 제2 패킷을 격리 실행하기 전에 가상 머신{VM_s}에 순환 신경망 학습 에이전트를 실행하여 제2 패킷에 관한 데이터 특성을 추출할 수 있다.The second risk factor determination unit 230 through the resulting virtual machine {VM_ s} can be executed to isolate the first and second packets, through these isolated execution second risk factor determining unit 230 is malicious The presence or absence of the code can be detected. In one embodiment, the second risk factor determining unit 230 executes the first packet and the virtual machine {VM_ s} Recurrent Neural Network learning agent in prior to running isolate the second packet to extract the data attributes in a second packet can do.

제2 위험요소 결정부(230)는 제1 및 제2 패킷들을 격리하여 실행한 후에 순환 신경망 학습 에이전트를 통해 순환 신경망 학습부(240)에 악성코드의 존재여부와 제2 패킷에 관한 데이터 특성을 제공할 수 있고, 순환 신경망 학습부(240)는 제2 위험요소 결정부(230)로부터 제공된 악성코드 존재여부와 제2 패킷에 관한 데이터 특성을 저장하여 학습할 수 있다.The second risk determining unit 230 isolates and executes the first and second packets, and then determines whether a malicious code exists in the loop neural network learning unit 240 and a data characteristic of the second packet through the loop neural network learning agent And the Cyclic Neural Network Learning Unit 240 can learn and store the existence of the malicious code provided from the second risk determining unit 230 and the data characteristic of the second packet.

제2 위험요소 결정부(230)는 악성코드가 존재할 가능성을 나타내는 악성코드 존재 확률을 산출할 수 있다. 보다 구체적으로, 제2 위험요소 결정부(230)는 제1 및 제2 패킷들이 격리 실행될 때 나타나는 리소스 권한 요청내용 및 리소스 사용량 중 적어도 하나를 기초로 악성코드 존재 확률을 산출할 수 있다. 예를 들어, 제2 위험요소 결정부(230)는 [\\xxx.xxx.x.x에 액세스할 수 없습니다.] 또는 [이 네트워크 리소스를 사용할 권한이 없는 것 같습니다.] 등과 같은 내용을 포함하는 리소스 권한 요청내용이 추출되는 경우 악성코드가 존재할 가능성이 높다고 판단할 수 있고, 네트워크, CPU 또는 메모리 등의 리소스 사용량이 초과되면 악성코드가 존재할 가능성이 높다고 판단할 수 있다. The second risk determining unit 230 can calculate the probability of existence of a malicious code indicating the possibility that a malicious code exists. More specifically, the second risk determining unit 230 may calculate the probability of existence of a malicious code based on at least one of a resource permission request content and a resource usage amount appearing when the first and second packets are quarantined. For example, the second risk determining unit 230 may not be able to determine whether or not a resource (for example, [\\ xxx.xxx.xx is inaccessible] If the content of the permission request is extracted, it can be determined that the malicious code is highly likely to exist. If the resource usage amount of the network, the CPU, the memory, or the like is exceeded, the malicious code is highly likely to be present.

제2 위험요소 결정부(230)는 특정 기준에 따라 악성코드 존재여부를 결정할 수 있고, 악성코드 존재여부를 결정하는 특정 기준은 사용자에 의하여 기 설정될 수 있다. 보다 구체적으로, 제2 위험요소 결정부(230)는 악성코드 존재 확률이 특정 기준을 초과하면 악성코드가 존재하는 것으로 결정할 수 있다.The second risk determining unit 230 may determine whether or not a malicious code exists according to a specific criterion, and a specific criterion for determining whether the malicious code exists or not may be preset by the user. More specifically, the second risk determining unit 230 may determine that a malicious code exists if the probability of existence of the malicious code exceeds a specific criterion.

순환 신경망 학습부(240)는 제2 위험요소 결정부(230)에 의하여 위험요소 재결정 과정이 진행되면 제2 패킷에 관해 순환 신경망 학습을 수행하여 순환 신경망 모델을 갱신할 수 있다. 보다 구체적으로, 순환 신경망 학습부(240)는 다음 패킷의 데이터 특성의 예측을 위해 제2 패킷과 재결정된 위험요소를 기초로 지도 학습(Supervised Learning)을 수행할 수 있다. 순환 신경망 학습부(240)는 순환 신경망 학습 에이전트를 통해 제2 패킷에 관한 데이터 특성과 재결정된 위험요소로서 제1 및 제2 패킷들에 악성코드가 존재하는지 여부를 수신하여 지도 학습을 수행할 수 있다.The cyclic-like neural network learning unit 240 may perform the cyclic neural network learning on the second packet to update the cyclic neural network model if the risk re-crystallization process is performed by the second CRC unit 230. [ More specifically, the circular neural network learning unit 240 may perform supervised learning based on the second packet and the redetermined risk element for prediction of the data characteristics of the next packet. The cyclic-neural network learning unit 240 receives the data characteristic of the second packet and the re-determined risk element through the CNS learning agent to determine whether malicious code exists in the first and second packets, have.

제어부(250)는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치(130)의 전체적인 동작을 제어하고, 패킷 입력부(210), 제1 위험요소 결정부(220), 제2 위험요소 결정부(230) 및 순환 신경망 학습부(240) 간의 데이터 흐름을 제어할 수 있다.The control unit 250 controls the overall operation of the RNAP-based network packet analyzing apparatus 130 and includes a packet input unit 210, a first risk determining unit 220, a second risk determining unit 230, And the circular neural network learning unit 240 can be controlled.

도 3은 순환 신경망 기반 네트워크 패킷의 위험요소 분석 과정을 상세하게 설명하는 순서도이다.FIG. 3 is a flowchart illustrating in detail a risk element analysis process of a network packet based on a circular neural network.

패킷 입력부(210)는 송신단(110)으로부터 세션에 있는 패킷들을 입력 받을 수 있다. 보다 구체적으로, 패킷 입력부(210)는 송신단(110)과 수신단(120) 사이에서 세션에 존재하는 연속적인 패킷들, 즉 제1 및 제2 패킷들을 입력 받을 수 있다. 패킷 입력부(210)는 입력 받은 제1 및 제2 패킷들을 제1 위험요소 결정부(220)와 제2 위험요소 결정부(230)에 제공할 수 있다.The packet input unit 210 can receive the packets in the session from the transmitting terminal 110. [ More specifically, the packet input unit 210 can receive continuous packets existing in the session, that is, the first and second packets between the transmitting end 110 and the receiving end 120. [ The packet input unit 210 may provide the received first and second packets to the first and second risk factors determiner 220 and 230.

제1 위험요소 결정부(220)는 패킷 입력부(210)로부터 제공 받은 연속적인 패킷들의 패턴 특성을 분석하여 위험요소를 결정할 수 있다. 보다 구체적으로, 제1 위험요소 결정부(220)는 제1 패킷에 순환 신경망 모델을 적용하여 제1 패킷에 대한 패턴을 분석함으로써 다음 패킷의 데이터 특성을 예측할 수 있고, 여기에서, 데이터 특성은 패킷에 포함된 데이터의 압축 비트맵에 해당할 수 있고, 압축 비트맵은 해시코드(Hash Code)를 압축하여 생성하거나 비트 테이블의 일부 데이터를 추출하고 압축하여 생성할 수 있다. 제1 위험요소 결정부(220)는 예측된 다음 패킷의 데이터 특성을 제2 패킷의 데이터 특성과 비교하여 유사도를 측정할 수 있고, 제1 위험요소 결정부(220)는 유사도 결과를 기초로 위험요소를 결정할 수 있다.The first risk determining unit 220 may determine a risk factor by analyzing pattern characteristics of continuous packets provided from the packet input unit 210. More specifically, the first risk factor determiner 220 may predict a data characteristic of a next packet by applying a circular neural network model to the first packet to analyze a pattern of the first packet, The compressed bit map can be generated by compressing a hash code or extracting and compressing a part of data of the bit table to generate the compressed bit map. The first risk factor determiner 220 may measure the similarity by comparing the data characteristic of the predicted next packet with the data characteristic of the second packet, and the first risk factor determiner 220 may determine the risk Element can be determined.

일 실시예에서, 제1 위험요소 결정부(220)는 다음 패킷의 데이터 특성과 제2 패킷의 데이터 특성 간의 유사도가 특정 기준 이상이면 다음 패킷의 데이터 특성이 정상인 경우와 다음 패킷의 데이터 특성이 비정상인 경우로 구분할 수 있다(단계 S310). 제1 위험요소 결정부(220)는 제1 패킷에 순환 신경망 모델을 적용한 결과에 따라 다음 패킷의 데이터 특성이 정상인 것으로 예측할 수 있다(단계 S312). 제1 위험요소 결정부(220)는 유사도가 특정 기준 이상이고 다음 패킷의 데이터 특성이 정상으로 예측되면 해당 세션을 안전한 세션으로 결정할 수 있다(단계 S314). 예를 들어, 제1 위험요소 결정부(220)는 안전한 세션으로 결정된 세션을 통해 수신되는 복수의 데이터(신호)들은 악성코드가 없는 데이터라 분류할 수 있다.In one embodiment, when the similarity between the data characteristics of the next packet and the data characteristics of the second packet is equal to or greater than a specific criterion, the first risk determining unit 220 determines that the data characteristic of the next packet is normal, (Step S310). The first risk determining unit 220 can predict that the data characteristic of the next packet is normal according to the result of applying the circular neural network model to the first packet (step S312). If the similarity degree is equal to or higher than a specific criterion and the data characteristic of the next packet is predicted to be normal, the first risk factor determiner 220 can determine the session as a secure session (step S314). For example, the first risk factor determiner 220 may classify a plurality of data (signals) received through a session determined as a secure session as data having no malicious code.

다른 일 실시예에서, 제1 위험요소 결정부(220)는 제1 패킷에 순환 신경망 모델을 적용한 결과에 따라 다음 패킷의 데이터 특성이 비정상인 것으로 예측할 수 있다(단계 S316). 제1 위험요소 결정부(220)는 유사도가 특정 기준 이상이지만 다음 패킷의 데이터 특성이 비정상으로 예측되면 해당 세션에 대해 심층패킷분석(DPI, Deep Packet Inspection)을 수행할 수 있다(단계 S318). In another embodiment, the first risk factor determiner 220 can predict that the data characteristic of the next packet is abnormal according to a result of applying the circular neural network model to the first packet (step S316). If the similarity degree is equal to or higher than a specific criterion but the data characteristic of the next packet is predicted to be abnormal, the first risk factor determination unit 220 may perform Deep Packet Inspection (DPI) for the corresponding session (step S318).

보다 구체적으로, 제1 위험요소 결정부(220)는 세션을 통해 과거의 특정 시간 동안 송수신되었던 패킷들에 관한 심층패킷분석을 수행하여 세션을 검증할 수 있고, 여기에서, 심층패킷분석은 패킷의 패턴 특성을 분석하는 것뿐만 아니라 패킷 내부의 실제 내용까지 심층적으로 분석하는 작업을 말한다. 예를 들어, 제1 위험요소 결정부(220)는 현재 시점을 기준으로 과거 1주일 동안 해당 세션에서 송수신되었던 패킷들을 수집할 수 있고, 수집한 패킷들에 대해 심층패킷분석을 수행할 수 있다. 이러한 과정을 통해 제1 위험요소 결정부(220)는 과거 패킷들의 심층패킷분석 결과를 기초로 세션 검증을 수행할 수 있고, 세션을 안전한 세션 및 불안전한 세션 중 적어도 하나로 세션 상태를 결정할 수 있다. More specifically, the first risk factor determiner 220 may perform a deep packet analysis on packets that have been transmitted / received during a specific time in the past through a session to verify the session, It is not only analyzing the pattern characteristics, but also analyzing in depth the actual contents inside the packet. For example, the first risk factor determiner 220 can collect packets transmitted and received in the past one week based on the current time point, and perform deep packet analysis on the collected packets. Through this process, the first risk factor determiner 220 can perform the session verification based on the deep packet analysis result of the past packets, and determine the session state using at least one of the secure session and the unsafe session.

제1 위험요소 결정부(220)는 다음 패킷의 데이터 특성이 비정상으로 예측되고 심층패킷분석을 수행하여 불안전한 세션으로 검증되면 해당 세션을 불안전한 세션으로 결정할 수 있다(단계 S320). 예를 들어, 제1 위험요소 결정부(220)는 불안전한 세션을 결정된 세션을 통해 수신되는 복수의 데이터(신호)들은 악성코드가 있는 데이터라 분류할 수 있다.If the data characteristic of the next packet is predicted to be abnormal and the in-depth packet analysis is performed and the packet is verified as an unsafe session, the first risk factor determination unit 220 may determine the session as an unsafe session (step S320). For example, the first risk factor determiner 220 may classify a plurality of data (signals) received through a determined session as an unsafe session as data having a malicious code.

제2 위험요소 결정부(230)는 다음 패킷의 데이터 특성과 제2 패킷의 데이터 특성 간의 유사도가 특정 기준 이하이면 제2 패킷에 대한 위험도 분석을 수행할 수 있고, 위험요소를 다시 결정할 수 있다(단계 S322). 제2 위험요소 결정부(230)는 제2 패킷에 대한 위험도 분석을 수행하기 위해 세션 전용의 가상 머신{VM_s}을 생성할 수 있고, 예를 들어, 제1 세션은 제1 가상 머신{VM_s1}과만 연관될 수 있으며, 제2 세션은 제2 가상 머신{VM_s2}과만 연관될 수 있다(단계 S324).If the similarity between the data characteristic of the next packet and the data characteristic of the second packet is less than a specific criterion, the second risk determining unit 230 can perform the risk analysis on the second packet and determine the risk factor again Step S322). The second risk factor determining unit 230 may generate the virtual machines {VM_ s} of the session only for performing risk analysis of a second packet, for example, the first session is a first virtual machine {VM_ may be associated only with s1}, a second session can be associated only with the second virtual machine VM_ {s2} (step S324).

제2 위험요소 결정부(230)는 생성된 가상 머신{VM_s}과 연동되는 순환 신경망 학습 에이전트를 실행하여 제2 패킷의 데이터 특성을 추출할 수 있다. 보다 구체적으로, 제2 위험요소 결정부(230)는 특정 세션과 연관된 가상 머신이 생성되면 가상 머신과 연동되는 순환 신경망 학습 에이전트{RNN_LA_s}를 생성할 수 있고, 가상 머신이 소멸되면 가상 머신과 연동되는 순환 신경망 학습 에이전트{RNN_LA_s}를 종료할 수 있다. 예를 들어, 제2 위험요소 결정부(230)는 제1 세션과 연관된 제1 가상 머신{VM_s1}을 생성하고, 제1 가상 머신{VM_s1}과 연동되는 제1 순환 신경망 학습 에이전트{RNN_LA_s1}를 생성한다. 여기에서, 순환 신경망 학습 에이전트는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치(130)의 프로세스로 구현될 수 있다.The second risk factor determining unit 230 executes the circular neural network learning agent that works with the resulting virtual machine VM_ {s} is possible to extract the characteristic data of the second packet. Than when Specifically, the second risk factor determining unit 230 when generating the virtual machine associated with a particular session, and to generate a circular neural network learning agent that works with a virtual machine {RNN_LA_ s}, the virtual machine is destroyed VM and you can terminate the interlocked circular neural network learning agent {RNN_LA_ s}. For example, the second risk factor determining unit 230 generates a first virtual machine {VM_ s1} associated with the first session, the first virtual machine {VM_ s1} and the first circulation neural network learning agent {RNN_LA_ peristaltic s1 }. Here, the cyclic neural network learning agent can be implemented as a process of the cyclic-neural network-based network packet risk analysis apparatus 130.

제2 위험요소 결정부(230)는 제1 및 제2 패킷들의 악성코드 존재여부를 검출할 수 있다. 보다 구체적으로, 제2 위험요소 결정부(230)는 생성된 가상 머신{VM_s}을 통해 제1 및 제2 패킷들을 격리시켜 실행함으로써 정확하게 악성코드의 존재여부를 검출할 수 있다. 예를 들어, 제2 위험요소 결정부(230)는 제1 패킷을 실행하여 제1 패킷에 대한 악성코드 존재여부를 검출할 수 있고, 제2 패킷을 실행하여 제2 패킷에 대한 악성코드 존재여부를 검출할 수 있다.The second risk determining unit 230 may detect the presence or absence of a malicious code in the first and second packets. More specifically, the second risk factor determining unit 230 may detect the presence of malicious code correctly by running through to the resulting virtual machine VM_ {s}, isolated first and second packets. For example, the second risk factor determiner 230 can detect the presence or absence of a malicious code for the first packet by executing the first packet, and execute the second packet to determine whether or not the malicious code exists for the second packet Can be detected.

제2 위험요소 결정부(230)는 순환 신경망 학습 에이전트{RNN_LA_s}를 통해 순환 신경망 학습부(240)에 악성코드의 존재여부와 제2 패킷에 관한 데이터 특성을 제공할 수 있다. 보다 구체적으로, 제2 위험요소 결정부(230)는 제1 및 제2 패킷들이 격리되어 실행될 때 리소스 권한 요청내용을 기초로 악성코드 존재 확률을 산출할 수 있고, 리소스 사용량을 기초로 악성코드 존재 확률을 산출할 수 있다.The second risk factor determining unit 230 may provide a data characteristic of the presence and the second packet of the infection of Recurrent Neural Network learning unit 240 via the neural network learning cycle RNN_LA_ agent {s}. More specifically, when the first and second packets are isolated and executed, the second risk determining unit 230 may calculate the probability of existence of a malicious code based on the content of the resource right request, Probability can be calculated.

악성코드 존재 확률은 아래의 [수학식 1]을 통해 산출될 수 있다.The probability of existence of the malicious code can be calculated through the following equation (1).

[수학식 1][Equation 1]

MC = RE + WMC = RE + W

(여기에서, MC는 악성코드 존재 확률, RE는 리소스 권한 요청자의 수, W는 네트워크, 메모리 또는 CPU의 점유율들에 대한 편차(%)를 의미한다)(Where MC is the probability of malicious code presence, RE is the number of resource privilege requesters, and W is the deviation (%) of network, memory or CPU occupancy)

예를 들어, 제2 위험요소 결정부(230)는 메모리 사용량이 높지만 CPU 점유율은 낮은 경우 악성코드가 존재할 가능성이 높다고 판단할 수 있고, 메모리 사용량이 낮지만 CPU 점유율이 높은 경우 악성코드가 존재할 가능성이 높다고 판단할 수 있다. 즉, 제2 위험요소 결정부(230)는 네트워크, 메모리 또는 CPU의 점유율들에 대한 편차가 많이 나는 경우 악성코드 존재확률이 높다고 판단할 수 있다.For example, the second risk determining unit 230 may determine that a malicious code is highly likely to be present if the memory usage is high but the CPU usage rate is low. If the memory usage is low but the CPU usage rate is high, Is high. That is, the second risk determining unit 230 may determine that the probability of existence of the malicious code is high if the deviation of the share of the network, the memory, or the CPU is large.

일 실시예에서, 제2 위험요소 결정부(230)는 악성코드 존재 확률이 특정 기준을 초과하지 않으면 악성코드가 존재하지 않는 것으로 결정할 수 있다(단계 S326). 보다 구체적으로, 제2 위험요소 결정부(230)는 악성코드 존재 확률을 기초로 제1 및 제2 패킷들에 악성코드가 존재하지 않는 것으로 결정되면 해당 세션이 안전한 것으로 결정할 수 있다.In one embodiment, the second risk determining unit 230 may determine that the malicious code does not exist if the probability of existence of the malicious code does not exceed a certain criterion (step S326). More specifically, the second risk determining unit 230 may determine that the session is secure if it is determined that no malicious code exists in the first and second packets based on the probability of existence of the malicious code.

다른 일 실시예에서, 제2 위험요소 결정부(230)는 악성코드 존재 확률이 특정 기준을 초과하면 악성코드가 존재하는 것으로 결정할 수 있다(단계 S328). 보다 구체적으로, 제2 위험요소 결정부(240)는 악성코드 존재 확률을 기초로 제1 및 제2 패킷들에 악성코드가 존재하는 것으로 결정되면 해당 세션이 불안전한 것으로 결정할 수 있다.In another embodiment, the second risk determining unit 230 may determine that the malicious code exists if the probability of existence of the malicious code exceeds a certain criterion (step S328). More specifically, if the malicious code exists in the first and second packets based on the malicious code presence probability, the second risk determining unit 240 may determine that the corresponding session is unsafe.

순환 신경망 학습부(240)는 제1 위험요소 결정부(220)와 제2 위험요소 결정부(230)를 통해 분석된 제1 및 제2 패킷들에 관한 위험요소 분석결과를 학습할 수 있다(단계 S330). 보다 구체적으로, 순환 신경망 학습부(240)는 제2 위험요소 결정부(230)를 통해 위험요소를 다시 결정하는 과정이 진행되면 제2 패킷에 관한 순환 신경망 학습을 수행할 수 있다. 순환 신경망 학습부(240)는 제2 패킷에 관한 순환 신경망 학습을 수행함으로써 순환 신경망 모델을 갱신할 수 있다. 예를 들어, 순환 신경망 학습부(240)는 제1 위험요소 결정부(220)를 통해 제1 패킷이 안전한 것으로 결정되면 제1 패킷에 대해 악성코드가 없는 패킷으로 학습을 수행할 수 있다.The Cyclic Neural Network Learning Unit 240 can learn the risk analysis results of the first and second packets analyzed through the first and second risk determining units 220 and 230 Step S330). More specifically, the cyclic-neural network learning unit 240 may perform the cyclic neural network learning on the second packet when the process of determining the risk factors again is performed through the second CRC unit 230. [ The circular neural network learning unit 240 can update the circular neural network model by performing the circular neural network learning on the second packet. For example, if it is determined that the first packet is secure through the first risk factor determination unit 220, the Cyclic Neural Network Learning Unit 240 can perform learning with respect to the first packet using a packet having no malicious code.

순환 신경망 학습부(240)는 다음 패킷의 데이터 특성을 예측하기 위해 제2 패킷과 제2 위험요소 결정부(230)를 통해 재결정된 위험요소를 기초로 지도 학습(supervised learning)을 수행할 수 있다. 보다 구체적으로, 순환 신경망 학습부(240)는 순환 신경망 학습 에이전트를 통해 제2 패킷에 관한 데이터 특성과 재결정된 위험요소로서 제1 및 제2 패킷들에 악성코드가 존재하는지 여부를 수신하여 지도 학습을 수행할 수 있다. 순환 신경망 학습부(240)는 학습된 순환 신경망 모델을 다음 네트워크 패킷의 위험요소를 분석할 때 사용할 수 있다. 즉, 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치(130)는 세션에 있는 연속적인 패킷들의 특성과 학습된 순환 신경망 모델의 특성을 지속적으로 비교 분석함으로써 복수의 패킷들을 위험요소로부터 방어할 수 있고, 전송성능 열화, 장애원인 탐지 및 위험요소 분석을 통해 네트워크의 생존성과 신뢰성을 극대화 할 수 있다.The Cyclic Neural Network Learning Unit 240 may perform supervised learning based on the second packet and the risk element re-determined through the second risk determining unit 230 in order to predict the data characteristic of the next packet . More specifically, the cyclic-neural network learning unit 240 receives the data characteristics of the second packet and whether or not the malicious code exists in the first and second packets as a re-determined risk element through the cyclic neural network learning agent, Can be performed. The cyclic-neural network learning unit 240 can use the learned cyclic neural network model to analyze the risk factors of the next network packet. That is, the risk analysis device 130 of the network packet based on the Cyclic Neural Network can protect a plurality of packets from the risk factors by continuously comparing and analyzing the characteristics of the continuous packets in the session and the characteristics of the learned Cyclic Neural Network model, It can maximize the survivability and reliability of the network through degradation of transmission performance, detection of failure cause and analysis of risk factors.

도 4는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 과정을 요약적으로 설명하는 순서도이다.4 is a flow chart for explaining a risk analysis process of a network packet based on a circular neural network.

도 4에서, 패킷 입력부(210)는 송신단(110)으로부터 세션에 있는 연속적인 제1 및 제2 패킷들을 입력 받을 수 있다(단계 S410).In FIG. 4, the packet input unit 210 receives the first and second consecutive packets in the session from the transmitting terminal 110 (step S410).

제1 위험요소 결정부(220)는 제1 패킷에 순환 신경망 모델을 적용하여 다음 패킷의 데이터 특성을 예측할 수 있고, 다음 패킷의 데이터 특성과 제2 패킷의 데이터 특성 간의 유사도를 기초로 위험요소를 결정할 수 있다(단계 S420). 보다 구체적으로, 제1 위험요소 결정부(220)는 다음 패킷의 데이터 특성과 유사도에 따라 세션의 상태를 결정할 수 있다. 제1 위험요소 결정부(220)는 유사도가 특정 기준 이상이고 다음 패킷의 데이터 특성이 정상이면 세션을 안전한 것으로 결정할 수 있고, 그렇지 않으면 심층패킷분석을 추가로 수행하여 세션의 상태를 결정할 수 있다.The first risk factor determiner 220 can apply the Cyclic Neural Network model to the first packet to predict the data characteristics of the next packet and calculate the risk factors based on the similarity between the data characteristics of the next packet and the data characteristics of the second packet (Step S420). More specifically, the first risk factor determiner 220 can determine the state of the session according to the data characteristics and similarities of the next packet. The first risk determining unit 220 can determine that the session is secure if the similarity is higher than a certain criterion and the data characteristic of the next packet is normal or else can perform the additional packet analysis to determine the state of the session.

제2 위험요소 결정부(230)는 유사도가 특정 기준 이하이면 제2 패킷에 관한 위험성 분석을 수행하여 위험요소를 재결정할 수 있다(단계 S430). 보다 구체적으로, 제2 위험요소 결정부(230)는 제2 패킷에 관한 위험성 분석을 수행하기 위하여 세션 전용의 가상 머신을 생성할 수 있고, 생성된 가상 머신과 연동되는 순환 신경망 학습 에이전트를 생성할 수 있다. 제2 위험요소 결정부(230)는 순환 신경망 학습 에이전트를 통해 제1 및 제2 패킷들에 악성코드 존재여부를 검출할 수 있다.If the degree of similarity is below a certain criterion, the second risk determining unit 230 may perform a risk analysis on the second packet to redetermine the risk factor (step S430). More specifically, the second risk determining unit 230 may generate a virtual machine dedicated to a session to perform the risk analysis on the second packet, and generate a circular neural network learning agent linked with the generated virtual machine . The second risk determining unit 230 may detect the presence or absence of a malicious code in the first and second packets through the CNN learning agent.

순환 신경망 학습부(240)는 위험요소 재결정이 진행되면 제2 패킷에 관해 순환 신경망 학습을 수행하여 순환 신경망 모델을 갱신할 수 있다(단계 S440). 보다 구체적으로, 순환 신경망 학습부(240)는 제1 패킷과 제2 패킷에 대해 순환 신경망 학습을 수행할 수 있고, 학습된 순환 신경망을 이용하여 네트워크 패킷의 위험요소를 분석할 수 있다.The cyclic-like neural network learning unit 240 may perform the cyclic neural network learning on the second packet to update the cyclic neural network model when the risk element recurrence progresses (step S440). More specifically, the circular neural network learning unit 240 can perform the circular neural network learning on the first packet and the second packet, and analyze the risk factors of the network packet using the learned circular neural network.

상기에서는 본 출원의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 통상의 기술자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 출원을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as set forth in the following claims And changes may be made without departing from the spirit and scope of the invention.

100: 순환 신경망 기반 네트워크 패킷의 위험요소 분석 시스템
110: 송신단
120: 수신단
130: 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치
210: 패킷 입력부
220: 제1 위험요소 결정부
230: 제2 위험요소 결정부
240: 순환 신경망 학습부
250: 제어부
100: Risk analysis system for network packets based on cyclic neural networks
110:
120: Receiver
130: Cyclic neural network based network packet risk analysis device
210: Packet input section
220: first risk factor determining section
230: second risk determining section
240: Cyclic Neural Network Learning Unit
250:

Claims (20)

송신단으로부터 세션에 있는 연속적인 제1 및 제2 패킷들을 입력받는 패킷 입력부;
상기 제1 패킷에 순환 신경망 모델을 적용하여 다음 패킷의 데이터 특성을 예측하고 상기 다음 패킷의 데이터 특성과 상기 제2 패킷의 데이터 특성 간의 유사도를 기초로 위험요소를 결정하는 제1 위험요소 결정부;
상기 유사도가 특정 기준 이하이면 상기 제2 패킷에 관한 위험성 분석을 수행하여 상기 위험요소를 재결정하는 제2 위험요소 결정부; 및
상기 재결정이 진행되면 상기 제2 패킷에 관해 순환 신경망 학습을 수행하여 상기 순환 신경망 모델을 갱신하는 순환 신경망 학습부를 포함하되,
상기 제2 위험요소 결정부는
상기 세션 전용의 가상 머신을 생성하고, 상기 가상 머신을 통해 상기 제1 및 제2 패킷들을 격리 실행하여 악성코드의 존재여부를 검출하고,
상기 제1 및 제2 패킷들이 격리 실행될 때 나타나는 리소스 권한 요청내용 및 리소스 사용량 중 적어도 하나를 기초로 상기 악성코드가 존재할 가능성을 나타내는 악성코드 존재 확률을 산출하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치.
A packet input unit for receiving first and second consecutive packets in a session from a transmitting end;
A first risk factor determiner for applying a cyclic neural network model to the first packet to predict a data characteristic of a next packet and to determine a risk factor based on a similarity between the data characteristic of the next packet and the data characteristic of the second packet;
A second risk factor determiner for redetermining the risk factor by performing a risk analysis on the second packet if the similarity is less than a specific criterion; And
And a circular neural network learning unit for performing a circular neural network learning on the second packet when the recrystallization proceeds, thereby updating the circular neural network model,
The second risk determining unit
Generating a virtual machine dedicated to the session, isolating and executing the first and second packets through the virtual machine to detect the presence of a malicious code,
Based on at least one of a resource permission request content and a resource usage amount appearing when the first and second packets are quarantined, calculates a malicious code presence probability indicating a possibility that the malicious code is present Risk analysis equipment.
제1항에 있어서, 상기 제1 위험요소 결정부는
상기 다음 패킷의 데이터 특성이 정상적인 것으로 예측되고 상기 유사도가 상기 특정 기준 이상이면 상기 세션을 안전한 것으로 결정하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치.
2. The apparatus of claim 1, wherein the first risk determining unit
And determines that the session is secure if the data characteristic of the next packet is predicted to be normal and the similarity is not less than the specific criterion.
제1항에 있어서, 상기 제1 위험요소 결정부는
상기 다음 패킷의 데이터 특성이 비정상적인 것으로 예측되고 상기 유사도가 상기 특정 기준 이상이면 상기 세션을 불안전한 것으로 결정하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치.
2. The apparatus of claim 1, wherein the first risk determining unit
And determines that the session is unstable if the data characteristic of the next packet is predicted to be abnormal and the similarity is not less than the specific criterion.
제3항에 있어서, 상기 제1 위험요소 결정부는
상기 세션을 통해 과거의 특정 시간 동안 송수신되었던 패킷들에 관한 심층패킷분석(DPI, Deep Packet Inspection)을 수행하여 상기 세션을 검증하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치.
4. The apparatus of claim 3, wherein the first risk determining unit
And the session is verified by performing Deep Packet Inspection (DPI) on the packets transmitted and received during a specific time in the past through the session.
삭제delete 제1항에 있어서, 상기 제2 위험요소 결정부는
상기 격리 실행 전에 상기 가상 머신에 순환 신경망 학습 에이전트를 실행하여 상기 제2 패킷에 관한 데이터 특성을 추출하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치.
2. The apparatus of claim 1, wherein the second risk determining unit
Wherein the apparatus is configured to execute a recursive neural network learning agent in the virtual machine before executing the isolation to extract data characteristics of the second packet.
제6항에 있어서, 상기 제2 위험요소 결정부는
상기 격리 실행 후에 상기 순환 신경망 학습 에이전트를 통해 상기 순환 신경망 학습부에 상기 악성코드의 존재여부와 상기 제2 패킷에 관한 데이터 특성을 제공하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치.
7. The apparatus of claim 6, wherein the second risk determiner
Wherein the presence / absence of the malicious code and the data characteristic of the second packet are provided to the Cyclic Neural Network Learning Unit through the Cyclic Neural Network Learning Agent after the quarantine execution.
삭제delete 제1항에 있어서, 상기 제2 위험요소 결정부는
상기 악성코드 존재 확률이 특정 기준을 초과하면 상기 악성코드가 존재하는 것으로 결정하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치.
2. The apparatus of claim 1, wherein the second risk determining unit
And determines that the malicious code exists if the probability of existence of the malicious code exceeds a specific criterion.
제1항에 있어서, 상기 순환 신경망 학습부는
상기 다음 패킷의 데이터 특성의 예측을 위해 상기 제2 패킷과 상기 재결정된 위험요소를 기초로 지도 학습(supervised learning)을 수행하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치.
The apparatus of claim 1, wherein the cyclic-neural network learning unit
Wherein supervised learning is performed on the basis of the second packet and the redetermined risk element for predicting a data characteristic of the next packet.
제10항에 있어서, 상기 순환 신경망 학습부는
순환 신경망 학습 에이전트를 통해 상기 제2 패킷에 관한 데이터 특성과 상기 재결정된 위험요소로서 상기 제1 및 제2 패킷들에 악성코드가 존재하는지 여부를 수신하여 상기 지도 학습을 수행하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치.
11. The apparatus of claim 10, wherein the cyclic-neural network learning unit
Wherein the learning is performed by receiving a data characteristic of the second packet and whether or not a malicious code exists in the first and second packets as the re-determined risk element through a CNS learning agent, A neural network - based network packet risk analysis device.
제1항에 있어서, 상기 데이터 특성은
상기 패킷에 포함된 데이터의 압축 비트맵에 해당하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치.
2. The method of claim 1,
And a compressed bitmap of the data included in the packet.
순환 신경망 기반 네트워크 패킷의 위험요소 분석 장치에서 수행되는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 방법에 있어서,
(a) 송신단으로부터 세션에 있는 연속적인 제1 및 제2 패킷들을 입력받는 단계;
(b) 상기 제1 패킷에 순환 신경망 모델을 적용하여 다음 패킷의 데이터 특성을 예측하고 상기 다음 패킷의 데이터 특성과 상기 제2 패킷의 데이터 특성 간의 유사도를 기초로 위험요소를 결정하는 단계;
(c) 상기 유사도가 특정 기준 이하이면 상기 제2 패킷에 관한 위험성 분석을 수행하여 상기 위험요소를 재결정하는 단계; 및
(d) 상기 재결정이 진행되면 상기 제2 패킷에 관해 순환 신경망 학습을 수행하여 상기 순환 신경망 모델을 갱신하는 단계를 포함하되,
상기 (c) 단계는
상기 세션 전용의 가상 머신을 생성하고, 상기 가상 머신을 통해 상기 제1 및 제2 패킷들을 격리 실행하여 악성코드의 존재여부를 검출하는 단계를 포함하고,
상기 제1 및 제2 패킷들이 격리 실행될 때 나타나는 리소스 권한 요청내용 및 리소스 사용량 중 적어도 하나를 기초로 상기 악성코드가 존재할 가능성을 나타내는 악성코드 존재 확률을 산출하는 단계를 포함하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 방법.
A method for analyzing a risk of a network packet based on a cyclic neural network based on a cyclic neural network,
(a) receiving first and second consecutive packets in a session from a transmitting end;
(b) applying a circular neural network model to the first packet to predict a data characteristic of a next packet, and determining a risk factor based on a similarity between the data characteristic of the next packet and the data characteristic of the second packet;
(c) if the similarity is less than a specific criterion, performing a risk analysis on the second packet and re-determining the risk factor; And
(d) performing the loop neural network learning on the second packet when the recrystallization proceeds, and updating the circular neural network model,
The step (c)
Generating a virtual machine dedicated to the session and isolating the first and second packets through the virtual machine to detect the presence of a malicious code,
And calculating a malicious code presence probability indicating a possibility that the malicious code is present based on at least one of a content of a resource permission request and a resource usage amount appearing when the first and second packets are quarantine executed. Based network packet risk analysis.
제13항에 있어서, 상기 (b) 단계는
상기 다음 패킷의 데이터 특성이 정상적인 것으로 예측되고 상기 유사도가 상기 특정 기준 이상이면 상기 세션을 안전한 것으로 결정하는 단계를 포함하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 방법.
14. The method of claim 13, wherein step (b)
And determining that the session is secure if the data characteristic of the next packet is predicted to be normal and the similarity is not less than the specific criterion.
제13항에 있어서, 상기 (b) 단계는
상기 다음 패킷의 데이터 특성이 비정상적인 것으로 예측되고 상기 유사도가 상기 특정 기준 이상이면 상기 세션을 불안전한 것으로 결정하는 단계를 포함하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 방법.
14. The method of claim 13, wherein step (b)
And determining that the session is unstable if the data characteristic of the next packet is predicted to be abnormal and the similarity is greater than or equal to the specific criterion.
제15항에 있어서, 상기 (b) 단계는
상기 세션을 통해 과거의 특정 시간 동안 송수신되었던 패킷들에 관한 심층패킷분석(DPI, Deep Packet Inspection)을 수행하여 상기 세션을 검증하는 단계를 더 포함하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 방법.
16. The method of claim 15, wherein step (b)
Further comprising the step of performing a deep packet inspection (DPI) on the packets transmitted and received during the past specific time through the session to verify the session. Analysis method.
삭제delete 제13항에 있어서, 상기 (c) 단계는
상기 격리 실행 전에 상기 가상 머신에 순환 신경망 학습 에이전트를 실행하여 상기 제2 패킷에 관한 데이터 특성을 추출하는 단계를 더 포함하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 방법.
14. The method of claim 13, wherein step (c)
Further comprising the step of executing a recursive neural network learning agent to the virtual machine before executing the quarantine to extract data characteristics of the second packet.
제13항에 있어서, 상기 (d) 단계는
상기 다음 패킷의 데이터 특성의 예측을 위해 상기 제2 패킷과 상기 재결정된 위험요소를 기초로 지도 학습(supervised learning)을 수행하는 단계를 포함하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 방법.
14. The method of claim 13, wherein step (d)
And performing supervised learning based on the second packet and the redetermined risk element for predicting the data characteristic of the next packet. .
제19항에 있어서, 상기 (d) 단계는
순환 신경망 학습 에이전트를 통해 상기 제2 패킷에 관한 데이터 특성과 상기 재결정된 위험요소로서 상기 제1 및 제2 패킷들에 악성코드가 존재하는지 여부를 수신하여 상기 지도 학습을 수행하는 단계를 더 포함하는 것을 특징으로 하는 순환 신경망 기반 네트워크 패킷의 위험요소 분석 방법.
20. The method of claim 19, wherein step (d)
Further comprising the step of receiving the data characteristic of the second packet through the CNS learning agent and whether the malicious code exists in the first and second packets as the re-determined risk element, and performing the map learning A method for analyzing risk factors of a network packet based on a cyclic neural network.
KR1020160134556A 2016-10-17 2016-10-17 Method for analyzing risk element of network packet based on recruuent neural network and apparatus analyzing the same KR101927100B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160134556A KR101927100B1 (en) 2016-10-17 2016-10-17 Method for analyzing risk element of network packet based on recruuent neural network and apparatus analyzing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160134556A KR101927100B1 (en) 2016-10-17 2016-10-17 Method for analyzing risk element of network packet based on recruuent neural network and apparatus analyzing the same

Publications (2)

Publication Number Publication Date
KR20180042019A KR20180042019A (en) 2018-04-25
KR101927100B1 true KR101927100B1 (en) 2018-12-10

Family

ID=62088738

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160134556A KR101927100B1 (en) 2016-10-17 2016-10-17 Method for analyzing risk element of network packet based on recruuent neural network and apparatus analyzing the same

Country Status (1)

Country Link
KR (1) KR101927100B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102291869B1 (en) * 2019-12-31 2021-08-19 아주대학교산학협력단 Method and apparatus for anomaly detection of traffic pattern
KR102420495B1 (en) * 2020-12-09 2022-07-14 디노플러스 (주) Low-latency cloud service providing device using deep learning-based data packet processing acceleration technology
KR102525593B1 (en) 2021-05-04 2023-04-25 엘아이지넥스원 주식회사 Network attack detection system and network attack detection method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101621019B1 (en) * 2015-01-28 2016-05-13 한국인터넷진흥원 Method for detecting attack suspected anomal event

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080083029A1 (en) * 2006-09-29 2008-04-03 Alcatel Intelligence Network Anomaly Detection Using A Type II Fuzzy Neural Network
JP6313730B2 (en) * 2015-04-10 2018-04-18 タタ コンサルタンシー サービシズ リミテッドTATA Consultancy Services Limited Anomaly detection system and method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101621019B1 (en) * 2015-01-28 2016-05-13 한국인터넷진흥원 Method for detecting attack suspected anomal event

Also Published As

Publication number Publication date
KR20180042019A (en) 2018-04-25

Similar Documents

Publication Publication Date Title
EP3635914B1 (en) Anomaly detection in computer networks
US20230092522A1 (en) Data packet processing method, apparatus, and electronic device, computer-readable storage medium, and computer program product
US10757135B2 (en) Bot characteristic detection method and apparatus
US20120317306A1 (en) Statistical Network Traffic Signature Analyzer
CA3159619C (en) Packet processing method and apparatus, device, and computer-readable storage medium
US10225269B2 (en) Method and apparatus for detecting network attacks and generating attack signatures based on signature merging
CN108270722B (en) Attack behavior detection method and device
KR101927100B1 (en) Method for analyzing risk element of network packet based on recruuent neural network and apparatus analyzing the same
WO2016080232A1 (en) Malicious communication pattern extraction device, malicious communication pattern extraction method, and malicious communication pattern extraction program
KR20130085570A (en) Method and terminal apparatus of cyber-attack prevention
CN107209834B (en) Malicious communication pattern extraction device, system and method thereof, and recording medium
JP2015015581A (en) Monitoring device, monitoring method, and program
US9578039B2 (en) OAM security authentication method and OAM transmitting/receiving devices
CN106790299B (en) Wireless attack defense method and device applied to wireless Access Point (AP)
JP2018518127A (en) Passive security analysis with inline active security devices
US10129277B1 (en) Methods for detecting malicious network traffic and devices thereof
CN106656966B (en) Method and device for intercepting service processing request
CN107426136B (en) Network attack identification method and device
CN114553730B (en) Application identification method and device, electronic equipment and storage medium
US10972500B2 (en) Detection system, detection apparatus, detection method, and detection program
WO2019047693A1 (en) Method and device for carrying out wifi network security monitoring
KR102182675B1 (en) Wireless device identification method and system using machine learning
KR101587845B1 (en) Method for detecting distributed denial of services attack apparatus thereto
KR20200014139A (en) The method of defense against distributed denial-of-service attack on the heterogeneous iot network and the system thereof
CN113328976B (en) Security threat event identification method, device and equipment

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant