KR101290036B1 - Apparatus and method of network security for dynamic attack - Google Patents

Apparatus and method of network security for dynamic attack Download PDF

Info

Publication number
KR101290036B1
KR101290036B1 KR1020070024137A KR20070024137A KR101290036B1 KR 101290036 B1 KR101290036 B1 KR 101290036B1 KR 1020070024137 A KR1020070024137 A KR 1020070024137A KR 20070024137 A KR20070024137 A KR 20070024137A KR 101290036 B1 KR101290036 B1 KR 101290036B1
Authority
KR
South Korea
Prior art keywords
packet data
count
map table
protocol
value
Prior art date
Application number
KR1020070024137A
Other languages
Korean (ko)
Other versions
KR20080083494A (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 KR1020070024137A priority Critical patent/KR101290036B1/en
Publication of KR20080083494A publication Critical patent/KR20080083494A/en
Application granted granted Critical
Publication of KR101290036B1 publication Critical patent/KR101290036B1/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
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Abstract

본 발명은 인터넷 프로토콜 버전 6(Internet Protocol version 6)에서 발생할 수 있는 동적 공격을 탐지하고 이를 처리하기 위한 동적 공격에 대한 네트워크 보안 장치 및 방법에 관한 것이다. 본 발명은 네트워크로부터 유입된 패킷데이터의 인터넷 프로토콜 버전정보를 확인하는 버전판단부(10)와 상기 버전판단부(10)에서 전달된 패킷데이터의 헤더정보를 분석하여 키 값을 확인하는 헤더분석부(20)와 상기 키 값에 따라 프로토콜별로 맵테이블(30)에 상기 패킷데이터에 대한 카운트를 누적 또는 생성하여 저장하는 맵테이블 관리부(40) 그리고 상기 패킷데이터에 대한 카운트와 관리자에 의해 미리 설정된 임계값의 비교 결과에 따라 상기 패킷데이터를 차단 또는 통과시키는 패킷처리부(50)를 포함하여 구성된다. 상술한 바와 같이 구성되는 본 발명에 의하면, IPv4 환경에서 적용되는 동적 공격 탐지가 IPv6 환경에 적용되어 IPv6을 기반으로 한 동적 공격을 탐지할 수 있고, 특히 IPv6 주소체계에서만 새롭게 발생될 수 있는 동적 공격까지 탐지하여 차단할 수 있는 이점이 있다.The present invention relates to a network security device and a method for detecting a dynamic attack that may occur in the Internet Protocol version 6 (Dynamic Protocol version 6) and to deal with it. The present invention is a header analysis unit for verifying the key value by analyzing the header information of the version determination unit 10 and the packet data transmitted from the version determination unit 10 to check the Internet protocol version information of the packet data introduced from the network And a map table manager 40 for accumulating or generating a count for the packet data in the map table 30 for each protocol according to the 20 and the key value, and a count set for the packet data and a threshold preset by the administrator. And a packet processor 50 for blocking or passing the packet data according to the result of the comparison of the values. According to the present invention configured as described above, the dynamic attack detection applied in the IPv4 environment can be applied to the IPv6 environment to detect the dynamic attack based on the IPv6, especially the dynamic attack that can be newly generated only in the IPv6 addressing system. There is an advantage that can be detected and blocked.

인터넷 프로토콜 버전, 동적 공격, 보안시스템, 헤더 Internet protocol version, dynamic attack, security system, header

Description

동적 공격에 대한 네트워크 보안 장치 및 방법{Apparatus and method of network security for dynamic attack}Apparatus and method of network security for dynamic attack

도 1은 본 발명에 의한 제 1실시예에 따른 네트워크 보안장치 구성도.1 is a block diagram of a network security device according to a first embodiment of the present invention.

도 2는 본 발명에 의한 제 1실시예에 따른 네트워크 보안장치를 이용한 동적 공격 탐지과정을 보인 전체 흐름도.2 is a flowchart illustrating a dynamic attack detection process using a network security device according to a first embodiment of the present invention.

도 3a 내지 도 3c는 도 2의 패킷데이터 헤더정보 분석에 따른 프로토콜별 처리방법 흐름도. 3A to 3C are flowcharts illustrating processing methods according to protocols based on packet data header information analysis of FIG. 2.

도 4는 본 발명에 의한 제 2실시예에 따른 네트워크 보안장치 구성도.Figure 4 is a block diagram of a network security device according to a second embodiment of the present invention.

도 5는 본 발명에 의한 제 2실시예에 따른 네트워크 보안장치를 이용한 동적 공격 탐지과정을 보인 전체 흐름도.5 is a flowchart illustrating a dynamic attack detection process using a network security device according to a second embodiment of the present invention.

*도면의 주요 부분에 대한 부호의 설명*Description of the Related Art [0002]

10 : 버전판단부 20 : 헤더분석부10: version judgment unit 20: header analysis unit

30 : 맵테이블 40 : 맵테이블 관리부30: map table 40: map table management unit

50 : 패킷처리부 60 : 로그분석부50: packet processing unit 60: log analysis unit

본 발명은 네트워크 보안시스템에 관한 것으로서, 특히 인터넷 프로토콜 버전 6(Internet Protocol version 6, 이하 IPv6이라 칭함)에서 발생할 수 있는 동적 공격을 탐지하고 이를 처리하기 위한 동적 공격에 대한 네트워크 보안 장치 및 방법에 관한 것이다.The present invention relates to a network security system, and more particularly, to a network security device and a method for detecting a dynamic attack that can occur in Internet Protocol version 6 (hereinafter referred to as IPv6) and for dealing with the dynamic attack. will be.

오늘날의 정보화 시대에서 인터넷 네트워크를 통한 정보 교류는 유비쿼터스 사회로 통합됨에 따라 더욱 증가되는 추세이다. 이에 따라 인터넷 보안의 중요성도 점점 높아지고 있다. 인터넷 네트워크가 이용되는 범위가 증가될수록 이를 통한 공격도 나날이 증가되고 그 수법 또한 고도로 지능화되고 있다. In today's information age, the exchange of information through the internet network is increasing as it is integrated into the ubiquitous society. As a result, the importance of Internet security is increasing. As the range of the Internet network is increased, the number of attacks is increasing day by day, and the technique is also highly intelligent.

최근 들어 가장 큰 문제가 되고 있는 네트워크 트랙픽에 대한 공격 기법 중의 하나는 바로 일정시간동안 수집된 패킷 스트림을 분석하여야 공격 여부를 판단할 수 있는 서비스 거부 공격(Denial of Service : DoS)과 같은 동적 공격 유형이다. 이러한 동적 공격은 시스템의 정상적인 서비스를 방해할 목적으로 대량의 데이터를 보내 대상 네트워크나 시스템의 성능을 급격히 저하시켜 대상 시스템에서 제공하는 서비스들을 사용하지 못하게 하는 공격 기법이다. One of the most recent attack techniques for network traffic is dynamic attack types such as Denial of Service (DoS), which can determine whether an attack is needed by analyzing packet streams collected for a certain period of time. to be. This dynamic attack is an attack technique that sends a large amount of data for the purpose of interfering with the normal service of the system, thereby rapidly degrading the performance of the target network or the system, so that the services provided by the target system cannot be used.

이와 같은 동적 공격을 포함한 다양한 트래픽 공격에 대비하여 네트워크 보안 시스템이 개발되고 있다. 네트워크 보안 시스템은 네트워크 트래픽을 감시하고 잠재적 위협을 인지한 후 이에 즉각적인 대응을 하기 위한 네트워크 보안 기술 중 예방적 차원의 접근방식에 해당하여, 침입 방지 시스템(Intrusion Prevention System : IPS), 침입 탐지 시스템(Intrusion Detection System : IDS) 등을 말할 수 있다.Network security systems are being developed in preparation for various traffic attacks including such dynamic attacks. A network security system is a preventive approach among network security technologies that monitors network traffic, recognizes potential threats, and responds to them immediately.Intrusion Prevention System (IPS), Intrusion Detection System ( Intrusion Detection System (IDS).

상기 네트워크 보안 시스템들은 인터넷(Internet)이 IPv4 프로토콜로 구축되어 있기 때문에 그 역시 인터넷 프로토콜 버전 4(Internet Protocol version 4, 이하 IPv4라 칭함)를 기반으로 보안 작업을 제공하고 있다. 하지만, 상기 IPv4 프로토콜의 한계점으로 인해 지속적인 인터넷 발전에 문제가 예상되어 이에 대한 대안으로써 IPv6 프로토콜이 제정되었다. 상기 IPv6은 주요 컴퓨터 운영체제를 비롯한 많은 제품에서 IP 지원의 일부로서 포함하고 있으며, IPv4에 비하여 확장된 IP 주소, IP 헤더 포맷의 단순화, IP 헤더 및 옵션의 확장성, 인증 및 보안 기능 등이 향상된 특징을 제공하고 있다.The network security systems provide security work based on Internet Protocol version 4 (hereinafter referred to as IPv4) because the Internet is built on the IPv4 protocol. However, due to the limitations of the IPv4 protocol, it is expected that there will be a problem in the continuous development of the Internet, and as an alternative, the IPv6 protocol was enacted. IPv6 is included as part of IP support in many products, including major computer operating systems, and has improved IP addresses, simplified IP header formats, extended IP headers and options, authentication and security features over IPv4. To provide.

그러나, 현재 네트워크 보안 시스템들이 IPv4 환경을 지원하고 있기 때문에 IPv6 환경에서의 부당한 패킷데이터에 대한 동적 공격을 탐지할 수 없는 문제점이 발생되었다. However, current network security systems support the IPv4 environment, which causes a problem in that dynamic attacks on illegal packet data in the IPv6 environment cannot be detected.

예컨대, IPv4 환경에서는 네트워크 보안 시스템의 애플리케이션 영역에서 동적 공격을 탐지하고 있지만, IPv6을 기반으로 한 동적 공격에 대한 탐지는 수행할 수 없었다.For example, in the IPv4 environment, the dynamic attack is detected in the application area of the network security system, but the detection of the dynamic attack based on the IPv6 cannot be performed.

따라서, 현재 기하급수적으로 늘어나는 사용자 수요를 감안하여 신규 IP 주소 수요를 충족하기 위해 고안된 IPv6 환경으로 전환되고 있는 시점에서, 이와 같이 IPv6을 기반으로 한 동적 공격을 탐지할 수 없다면 부당한 패킷이더라도 해당 아이피(IP) 주소 또는 유입 트래픽을 봉쇄할 수 없게 되어 전체적인 네트워크 서비스 성능이 저하되게 된다. Therefore, at the time of the transition to the IPv6 environment, which is designed to meet the demand of new IP addresses in consideration of the exponentially increasing user demand, if the IPv6-based dynamic attack cannot be detected, even if the packet is invalid, the IP ( The inability to block IP) addresses or incoming traffic can reduce overall network service performance.

따라서, 본 발명의 목적은 상기한 바와 같은 종래 기술의 문제점을 해결하기 위한 것으로, IPv4 환경에서 적용되는 동적 공격 탐지를 IPv6 환경에서도 적용되도록 한 동적 공격에 대한 네트워크 보안 장치를 제공하는 것이다.Accordingly, an object of the present invention is to solve the problems of the prior art as described above, and to provide a network security device for dynamic attack, which enables dynamic attack detection applied in an IPv4 environment to be applied in an IPv6 environment.

본 발명의 다른 목적은 IPv6 환경에서만 발생할 수 있는 동적 공격 유형들을 탐지할 수 있도록 하는데 있다.Another object of the present invention is to enable detection of dynamic attack types that can occur only in an IPv6 environment.

본 발명의 또 다른 목적은 동적 공격 탐지를 커널 영역에서 수행할 수 있도록 하는데 있다.Another object of the present invention is to enable dynamic attack detection in the kernel domain.

상기한 바와 같은 목적을 달성하기 위한 본 발명의 특징에 따르면, 본 발명은 네트워크로부터 유입된 패킷데이터의 인터넷 프로토콜 버전정보를 확인하는 버전판단부와, 상기 버전판단부에서 전달된 패킷데이터의 헤더정보를 분석하여 패킷데이터에 대한 키 값을 확인하는 헤더분석부와, 상기 키 값에 따라 프로토콜별로 맵테이블에 상기 패킷데이터에 대한 카운트를 누적 또는 생성하여 저장하는 맵테이블 관리부 그리고 상기 카운트와 관리자에 의해 미리 설정된 임계값의 비교 결과에 따라 상기 패킷데이터를 차단 또는 통과시키는 패킷처리부를 포함하여 구성된다.According to a feature of the present invention for achieving the above object, the present invention provides a version determination unit for confirming the Internet protocol version information of the packet data introduced from the network, and the header information of the packet data transferred from the version determination unit A header analysis unit for checking a key value for the packet data by analyzing the data, a map table manager for accumulating or generating a count for the packet data in a map table for each protocol according to the key value, and storing the count for the packet data by the count and the manager. And a packet processing unit for blocking or passing the packet data according to a comparison result of a preset threshold.

상기 버전판단부, 헤더분석부, 맵테이블 관리부, 패킷처리부는 보안 시스템의 커널 영역에 구비되고, 상기 버전판단부는 IPv6 기반의 패킷데이터만을 상기 헤더분석부로 전달한다. 또한 상기 헤더분석부는 상기 헤더정보로부터 상기 패킷데이터의 프로토콜을 구분하고, 상기 프로토콜별로 소스IP주소, 목적지IP주소, 동적 공격명과 같은 키 값을 확인한다.The version determining unit, the header analyzing unit, the map table managing unit, and the packet processing unit are provided in the kernel region of the security system, and the version determining unit delivers only IPv6 based packet data to the header analyzing unit. In addition, the header analyzer identifies a protocol of the packet data from the header information, and identifies key values such as a source IP address, a destination IP address, and a dynamic attack name for each protocol.

본 발명의 다른 특징에 따르면, 본 발명은 네트워크로부터 유입된 패킷데이터의 인터넷 프로토콜 버전정보를 확인하는 버전판단부와, 상기 패킷데이터의 로그 생성시 기록된 로그정보를 분석하여 패킷데이터에 대한 키 값을 확인하는 로그분석부와, 상기 키 값에 따라 프로토콜별로 맵테이블에 상기 패킷데이터에 대한 카운트를 누적 또는 생성하여 저장하는 맵테이블 관리부 그리고 상기 카운트와 관리자에 의해 미리 설정된 임계값의 비교 결과에 따라 상기 패킷데이터를 차단 또는 통과시키는 패킷처리부를 포함하여 구성된다.According to another aspect of the present invention, the present invention provides a key value for the packet data by analyzing a version determination unit for checking the Internet protocol version information of the packet data flowing from the network, and the log information recorded at the time of generating the log of the packet data A log analysis unit for verifying the data; a map table manager for accumulating or generating a count for the packet data in a map table according to the protocol according to the key value; and according to a comparison result between the count and a threshold preset by the administrator. And a packet processing unit for blocking or passing the packet data.

상기 버전판단부, 로그분석부, 맵테이블 관리부, 패킷처리부는 보안 시스템의 커널 영역에 구비되고 상기 로그분석부는 상기 로그정보로부터 상기 패킷데이터의 프로토콜을 구분하고, 상기 프로토콜별로 소스IP주소, 목적지IP주소, 동적 공격명과 같은 키 값을 확인한다. 또한 상기 버전판단부는 IPv6 기반의 패킷데이터만을 상기 헤더분석부로 전달한다.The version determining unit, the log analyzing unit, the map table managing unit, and the packet processing unit are provided in the kernel area of the security system, and the log analyzing unit classifies the protocol of the packet data from the log information, and the source IP address and the destination IP for each protocol. Check key values such as address and dynamic attack name. In addition, the version determining unit delivers only IPv6 based packet data to the header analyzing unit.

한편, 상기 맵테이블은 상기 패킷데이터의 프로토콜별로 유입된 횟수가 저장되는 테이블 형태로 구성된다. 상기 맵테이블 관리부는 상기 맵테이블을 검색하여 패킷데이터에 대한 키 값의 저장유무를 확인하고 상기 키 값이 상기 맵테이블에 이미 저장되어 있는 경우 상기 맵테이블의 카운트를 증가시키고, 상기 키 값이 상기 맵테이블에 미존재하는 경우 상기 맵테이블에 상기 키 값을 추가시킨다.On the other hand, the map table is configured in the form of a table that stores the number of times that the packet flows for each protocol. The map table management unit searches the map table to check whether a key value is stored for packet data, and if the key value is already stored in the map table, increases the count of the map table, and the key value is determined by the map table. If the map table does not exist, the key value is added to the map table.

본 발명의 또 다른 특징에 따르면, 본 발명은 유입되는 패킷데이터의 인터넷 프로토콜 버전을 확인하는 버전판단단계와 상기 패킷데이터의 헤더정보를 참조하여 패킷데이터에 대한 키 값을 확인하는 헤더분석단계와 상기 키 값에 따라 프로토콜 별로 맵테이블에 상기 패킷데이터에 대한 카운트를 누적 또는 생성하는 카운트취득단계 그리고 상기 카운트와 관리자에 의해 미리 설정된 임계값의 비교 결과에 따라 상기 패킷데이터를 차단 또는 통과시키는 패킷처리단계를 포함하여 구성된다.According to still another aspect of the present invention, the present invention provides a version determination step of checking an Internet protocol version of incoming packet data and a header analysis step of checking a key value for the packet data with reference to the header information of the packet data. A count acquiring step of accumulating or generating a count for the packet data in a map table for each protocol according to a key value, and a packet processing step of blocking or passing the packet data according to a result of comparing the count with a threshold preset by an administrator. It is configured to include.

상기 버전판단단계, 헤더분석단계, 카운트취득단계 그리고 패킷처리단계는 보안 시스템의 커널 영역에서 실행되며, 상기 헤더분석단계는 상기 버전판단단계에서 IPv6 기반으로 확인된 패킷데이터의 헤더정보를 분석한다.The version determination step, header analysis step, count acquisition step, and packet processing step are executed in the kernel region of the security system, and the header analysis step analyzes header information of the packet data identified based on IPv6 in the version determination step.

상기 헤더분석단계의 상기 키 값은, 상기 헤더정보로부터 구분된 프로토콜별로 발생가능한 동적 공격명이 포함된다. The key value of the header analysis step includes a dynamic attack name that can be generated for each protocol separated from the header information.

그리고 상기 패킷처리단계는 상기 카운트 값이 상기 임계값을 초과할 경우 동적 공격으로 상기 패킷데이터를 차단하고, 상기 카운트 값이 상기 임계값 이하일 경우 상기 패킷데이터를 애플리케이션 영역으로 전달시킨다.The packet processing step blocks the packet data by a dynamic attack when the count value exceeds the threshold value, and delivers the packet data to an application area when the count value is less than the threshold value.

본 발명의 또 다른 특징에 따르면, 본 발명은 유입되는 패킷데이터의 인터넷 프로토콜 버전을 확인하는 버전판단단계와 상기 패킷데이터의 로그 생성시 기록된 로그정보를 분석하여 패킷데이터에 대한 키 값을 확인하는 로그분석단계와 상기 키 값에 따라 프로토콜별로 맵테이블에 상기 패킷데이터에 대한 카운트를 누적 또는 생성하는 카운트취득단계 그리고 상기 카운트와 관리자에 의해 미리 설정된 임계값의 비교 결과에 따라 상기 패킷데이터를 차단 또는 통과시키는 패킷처리단계를 포함하여 구성된다.According to another feature of the present invention, the present invention is to determine the key value for the packet data by analyzing the version determination step of checking the Internet protocol version of the incoming packet data and the log information recorded at the log generation of the packet data A packet acquisition step of accumulating or generating a count for the packet data in a map table for each protocol according to a log analysis step and the key value, and blocking or blocking the packet data according to a comparison result between the count and a threshold preset by an administrator. It includes a packet processing step to pass.

상기 버전판단단계, 로그분석단계, 카운트취득단계 그리고 패킷처리단계는 보안 시스템의 커널 영역에서 실행되며, 상기 로그분석단계는 상기 버전판단단계에 서 IPv6 기반으로 확인된 패킷데이터의 로그정보를 분석한다.The version determining step, the log analyzing step, the count acquiring step, and the packet processing step are executed in the kernel region of the security system, and the log analyzing step analyzes log information of packet data identified based on IPv6 in the version determining step. .

상기 로그분석단계의 상기 키 값은, 상기 로그정보로부터 구분된 프로토콜별로 발생가능한 동적 공격명이 포함된다.The key value of the log analysis step includes a dynamic attack name that can be generated for each protocol separated from the log information.

그리고 상기 패킷처리단계는 상기 카운트 값이 상기 임계값을 초과할 경우 동적 공격으로 판단하여 상기 패킷데이터가 발생된 시스템으로부터의 패킷데이터를 일정시간 차단시키며 이미 애플리케이션 영역으로 넘어간 상기 패킷데이터에 대한 서비스가 미제공되게 처리한다.When the count value exceeds the threshold, the packet processing step determines that the attack is a dynamic attack, blocks the packet data from the system where the packet data is generated for a predetermined time, and provides a service for the packet data that has already been transferred to the application area. Dispose of not provided.

한편, 상기 카운트취득단계는 상기 키 값이 상기 맵테이블에 이미 저장되어 있는 경우 상기 맵테이블에 저장된 카운트를 증가시키고, 상기 키 값이 상기 맵테이블에 미존재하는 경우 상기 맵테이블에 상기 키 값을 추가시키며 카운트를 함께 생성한다. 특히, 상기 키 값은 상기 패킷데이터에 포함된 프로토콜이 전송 제어 프로토콜인 경우 목적지 포트 번호가 포함된다.On the other hand, the count acquiring step increases the count stored in the map table when the key value is already stored in the map table, and adds the key value to the map table when the key value does not exist in the map table. Add and generate counts together. In particular, the key value includes a destination port number when the protocol included in the packet data is a transmission control protocol.

또한 상기 동적 공격이 DAD-NA 메시지 플로딩 공격인 경우 상기 패킷처리단계는, NA 카운트값이 상기 임계값과 NS 카운트값을 모두 초과할 경우 동적 공격으로 판단하여 상기 패킷데이터를 차단시키고, 상기 NA 카운트값이 상기 임계값 이하이거나 초과하더라도 상기 NS 카운트값 이하일 경우 상기 패킷데이터를 애플리케이션 영역으로 전달시킨다. If the dynamic attack is a DAD-NA message floating attack, the packet processing step ë ", if the NA count value exceeds both the threshold value and the NS count value, determines that the dynamic attack blocks the packet data, and the NA If the count value is less than or equal to the threshold value or less than the NS count value, the packet data is transferred to the application area.

반면, NA 카운트값이 상기 임계값과 NS 카운트값을 모두 초과할 경우 동적 공격으로 판단하여 상기 패킷데이터가 발생된 시스템으로부터의 패킷데이터를 일정시간 차단시키며 이미 애플리케이션 영역으로 넘어간 상기 패킷데이터에 대한 서비 스가 미제공되게 처리한다. On the other hand, if the NA count value exceeds both the threshold value and the NS count value, it is determined as a dynamic attack to block the packet data from the system where the packet data is generated for a predetermined time, and the service for the packet data that has already been transferred to the application area. Treat the switch as not provided.

이때 상기 NA 카운트는 인터넷 제어 메시지 프로토콜 헤더의 타입 필드값이 136인 패킷데이터에 대한 카운트이고, 상기 NS 카운트는 인터넷 제어 메시지 프로토콜 헤더의 타입 필드값이 135인 패킷데이터에 대한 카운트를 나타낸다.In this case, the NA count is a count for packet data whose type field value of the Internet control message protocol header is 136, and the NS count is a count for packet data whose type field value of the Internet control message protocol header is 135.

이와 같은 구성을 가지는 본 발명에 의하면, IPv4 환경에서 적용되는 동적 공격 탐지가 IPv6 환경에 적용되어 IPv6을 기반으로 한 동적 공격을 탐지할 수 있고, 특히 IPv6 주소체계에서만 새롭게 발생될 수 있는 동적 공격까지 탐지하여 차단할 수 있는 이점이 있다.According to the present invention having such a configuration, the dynamic attack detection applied in the IPv4 environment can be applied to the IPv6 environment to detect the dynamic attack based on the IPv6, and especially the dynamic attack that can be newly generated only in the IPv6 addressing system. There is an advantage that can be detected and blocked.

이하 본 발명에 의한 동적 공격에 대한 네트워크 보안 장치 및 방법을 첨부된 도면에 도시된 바람직한 실시예를 참고하여 상세하게 설명한다. Hereinafter, a network security apparatus and method for dynamic attack according to the present invention will be described in detail with reference to a preferred embodiment shown in the accompanying drawings.

도 1에는 본 발명에 의한 제 1실시예에 따른 네트워크 보안장치 구성도가 도시되어 있다.1 is a block diagram of a network security device according to a first embodiment of the present invention.

도 1을 참조하면, 네트워크로부터 유입된 패킷데이터의 버전정보를 확인하는 버전판단부(10)가 구비된다. 상기 버전판단부(10)는 IPv4 또는 IPv6을 판단하며, 만일 IPv4를 기반으로 하는 패킷데이터인 경우에는 IPv4와 관련된 패킷데이터를 처리할 수 있는 별도 시스템(미도시)으로 전송하고, IPv6 기반의 패킷데이터만을 전달받도록 한다.Referring to FIG. 1, a version determining unit 10 confirms version information of packet data introduced from a network. The version determining unit 10 determines the IPv4 or IPv6, if the packet data based on IPv4, and transmits to a separate system (not shown) that can process the packet data related to IPv4, IPv6-based packets Receive only data.

상기 버전판단부(10)에 의해 판단된 IPv6 기반의 패킷데이터를 전달받고 그 패킷데이터의 헤더(Header)를 참조하여 IP 헤더정보를 분석하는 헤더분석부(20)가 구비된다. 상기 헤더분석부(20)는, 상기 패킷데이터의 프로토콜 즉 전송 제어 프로 토콜(Transmission Control Protocol, 이하 TCP라 칭함)/사용자 데이터그램 프로토콜(User Datagram Protocol, 이하 UDP라 칭함)/IPv6을 위한 인터넷 제어 메시지 프로토콜(Internet Control Message Protocol for IPv6, 이하 ICMPv6라 칭함) 등을 구분하고, 각각의 프로토콜별로 소스IP주소, 목적지IP주소, 동적 공격명과 같은 키 값을 확인한다. The header analyzing unit 20 receives the IPv6-based packet data determined by the version determining unit 10 and analyzes the IP header information with reference to the header of the packet data. The header analysis unit 20 controls the protocol of the packet data, that is, a transmission control protocol (hereinafter referred to as TCP) / user datagram protocol (hereinafter referred to as UDP) / IPv6. Message protocols (Internet Control Message Protocol for IPv6, hereinafter referred to as ICMPv6) are distinguished and key values such as source IP address, destination IP address, and dynamic attack name are checked for each protocol.

상기 확인된 키 값에 따라 프로토콜별로 맵테이블(30)에 상기 패킷데이터에 대한 카운트를 누적 또는 생성하여 저장하는 맵테이블 관리부(40)가 구비된다. 상기 맵테이블(30)에는 패킷데이터의 프로토콜별로 유입된 횟수가 테이블 형태로 저장된다. 즉, 패킷데이터가 유입될 때마다 해당 프로토콜별로 트래픽별 카운트가 발생하도록 구성되어진다. 이때 상기 맵테이블(30)은 해시 테이블(hash table)로 구성됨이 바람직하다.A map table manager 40 is provided for accumulating or generating a count for the packet data in the map table 30 for each protocol according to the identified key value. The map table 30 stores the number of times that the packet data has been introduced for each protocol in the form of a table. That is, each time the packet data flows is configured to generate a traffic count for each protocol. At this time, the map table 30 is preferably composed of a hash table (hash table).

그리고 상기 맵테이블(30)을 참조하여 유입된 패킷데이터의 해당 프로토콜별 카운트와 관리자에 의해 미리 설정된 임계값을 비교하여 동적 공격 여부를 판단하며, 그 판단결과 상기 패킷데이터를 일정시간동안 차단시키거나 애플리케이션 영역으로 전달하는 패킷처리부(50)가 구비된다.And by comparing the count for each protocol of the incoming packet data with the threshold value preset by the administrator with reference to the map table 30 to determine whether the dynamic attack, and as a result of blocking the packet data for a certain time or A packet processor 50 for delivering to the application area is provided.

그리고 본 발명에 의한 제 1실시예에서 상기 패킷데이터의 동적 공격 여부를 판단하는 상기한 버전판단부(10), 헤더분석부(20), 맵테이블 관리부(40), 패킷처리부(50) 구성은 보안 시스템의 커널 영역에 제공된다. 즉, 종래 동적 공격 여부를 탐지하기 위한 탐지모듈이 애플리케이션 영역에 제공되는 것과는 차이점이 있다.In the first embodiment of the present invention, the version determining unit 10, the header analyzing unit 20, the map table managing unit 40, and the packet processing unit 50 that determine whether the packet data is dynamically attacked are configured. It is provided in the kernel area of the security system. In other words, the detection module for detecting whether the conventional dynamic attack is provided in the application area is different.

이어 상기와 같이 구성된 네트워크 보안 장치에서 IPv6 주소체계로 구성된 패킷데이터의 동적 공격을 탐지하는 과정을 첨부된 도면을 참조하여 설명한다.Next, a process of detecting a dynamic attack of packet data configured with an IPv6 address system in the network security device configured as described above will be described with reference to the accompanying drawings.

도 2에는 본 발명에 의한 제 1실시예에 따른 네트워크 보안장치를 이용한 동적 공격 탐지과정을 보인 전체 흐름도가 도시되어 있다.2 is a flowchart illustrating a dynamic attack detection process using a network security device according to a first embodiment of the present invention.

소정의 데이터가 서버나 시스템 등으로 전송되기 위하여 다른 시스템으로부터 패킷데이터가 발생된다. 그러면 상기 발생된 패킷데이터의 동적 공격 여부를 판단하기 위하여 본 발명에 의한 제 1실시예에 따른 보안장치로 유입되게 된다(S100).Packet data is generated from another system in order to transmit predetermined data to a server or a system. Then, it is introduced into the security apparatus according to the first embodiment of the present invention to determine whether the generated packet data is a dynamic attack (S100).

상기 유입된 패킷데이터는 먼저 버전판단부(10)로 전달된다.The introduced packet data is first transmitted to the version determining unit 10.

상기 버전판단부(10)는 IPv4 또는 IPv6 주소를 기반으로 한 패킷데이터를 확인하는 것으로서(S110), 이는 본 발명이 IPv6 기반의 패킷데이터에 대한 동적 공격을 판단하기 위함이다. 따라서 만일 상기 유입된 패킷데이터의 주소체계가 IPv4인 경우에는 이를 처리할 수 있는 다른 보안장치로 전송되게 된다(S112). 그러나, 상기 유입된 패킷데이터의 주소체계가 IPv6인 경우에는 이 패킷데이터의 동적 공격 여부를 판단하기 위하여 상기 헤더분석부(20)로 전송된다.The version determining unit 10 checks the packet data based on the IPv4 or IPv6 address (S110), which is to determine the dynamic attack on the packet data based on the IPv6. Therefore, if the address system of the incoming packet data is IPv4, it is transmitted to another security device that can handle it (S112). However, if the address system of the incoming packet data is IPv6, it is transmitted to the header analyzer 20 to determine whether the packet data is a dynamic attack.

상기 헤더분석부(20)는 상기 패킷데이터의 IP 헤더영역을 분석하고(S120) 상기 헤더정보를 참조하여 소스IP주소, 목적지IP주소, 동적 공격명 등의 키 값을 확인한다(S122). 그리고 상기 키 값이 맵테이블(30)에서 관리되도록 상기 맵테이블 관리부(40)로 전달한다. 이때 상기 동적 공격명은 상기 IP 헤더영역에 포함된 넥스트 헤더(Next Header) 필드값에 나타난 상기 패킷데이터의 프로토콜 방식으로부터 확인된다. 대부분 패킷데이터는 네트워크 전송방식에 따라 TCP/UDP/ICMPv6 등의 프 로토콜을 가지고 있다. 만일 현재 사용중인 프로토콜 이외의 표준화된 프로토콜이 새로 개발되어 사용된다고 하더라도 이는 맵테이블(30)이 그 프로토콜 형태를 제공하기만 하면 된다.The header analyzing unit 20 analyzes an IP header area of the packet data (S120) and checks key values such as a source IP address, a destination IP address, and a dynamic attack name with reference to the header information (S122). The key value is transmitted to the map table manager 40 so that the key value is managed in the map table 30. At this time, the dynamic attack name is confirmed from the protocol method of the packet data shown in the Next Header field value included in the IP header area. Most packet data has protocols such as TCP / UDP / ICMPv6 depending on the network transmission method. If a standardized protocol other than the protocol currently being used is newly developed and used, it is only necessary that the map table 30 provides the protocol type.

상기 맵테이블 관리부(40)는 상기 전달된 키 값을 참조하여 상기 맵테이블(30)에 액세스하여 동일한 패킷데이터가 존재하는지를 검사한다(S130). 상기 검사결과 동일한 키 값을 갖는 패킷데이터가 이미 상기 맵테이블(30)에 존재한 경우에는 해당 패킷데이터의 카운트를 증가시킨다(S132). 만일 동일한 키 값을 갖는 패킷데이터가 계속 유입된 경우에는 해당 패킷데이터만이 계속 업카운트 될 것이다. 이에 반해 상기 키 값이 상기 맵테이블(30)에 존재하지 않는 경우에는 상기 키 값의 패킷데이터를 새롭게 저장한다(S134). 물론 새로 저장된 패킷데이터의 카운트는 1과 같이 정해진 초기값을 가짐이 바람직하다. The map table manager 40 accesses the map table 30 by referring to the transmitted key value and checks whether the same packet data exists (S130). If packet data having the same key value already exists in the map table 30 as a result of the check, the count of the corresponding packet data is increased (S132). If packet data with the same key value is continuously introduced, only the corresponding packet data will continue to be counted up. In contrast, when the key value does not exist in the map table 30, packet data of the key value is newly stored (S134). Of course, the newly stored count of the packet data preferably has an initial value determined as 1.

다음 패킷처리부(50)는 상기 맵테이블(30)을 지속적으로 액세스하면서, 현재 유입되고 있는 패킷데이터가 동적 공격에 해당하는 패킷데이터인지를 감시한다. 상기 동적 공격 판단은 상기 패킷데이터의 카운트 값과 관리자에 의해 설정되어 있는 임계값 비교에 의해 결정된다(S140). 즉 상기 패킷데이터의 카운트 값과 상기 임계값을 비교하고 만일 상기 카운트 값이 상기 임계값을 초과할 경우에는 동적 공격으로 판단하여 상기 패킷데이터가 애플리케이션 영역으로 전달되지 않도록 차단시킨다(S150). 따라서 상기 패킷데이터에 대한 서비스는 제공되지 않게 된다.Next, the packet processing unit 50 continuously accesses the map table 30 and monitors whether the packet data currently being introduced is packet data corresponding to a dynamic attack. The dynamic attack determination is determined by comparing a count value of the packet data with a threshold value set by an administrator (S140). That is, the count value of the packet data is compared with the threshold value, and if the count value exceeds the threshold value, it is determined as a dynamic attack to block the packet data from being delivered to the application area (S150). Therefore, the service for the packet data is not provided.

그러나 상기 카운트 값이 상기 임계값을 초과하지 않는 경우 상기 패킷처리부(50)는 상기 패킷데이터가 안전하다고 판단하고 이에 대한 서비스가 제공되도록 상기 패킷데이터를 애플리케이션 영역으로 전달한다(S152).However, if the count value does not exceed the threshold value, the packet processing unit 50 determines that the packet data is secure and transfers the packet data to the application area so as to provide a service thereof (S152).

한편, 상기 패킷데이터의 프로토콜 유형에 따라 그 패킷데이터의 처리과정을 상세하게 설명하면 다음과 같다. 이는 도 2의 패킷데이터 헤더정보 분석에 따른 프로토콜별 처리방법 흐름도를 도시하고 있는 도 3a 내지 도 3c를 참조하여 설명한다.Meanwhile, the processing of the packet data according to the protocol type of the packet data will be described in detail as follows. This will be described with reference to FIGS. 3A to 3C which show a flowchart of a protocol-specific processing method according to the packet data header information analysis of FIG. 2.

도 3a는 패킷데이터가 TCP 패킷데이터인 경우이다.3A illustrates a case where packet data is TCP packet data.

먼저, 상기 헤더분석부(20)는 IPv6 패킷데이터를 전달받고(S200) 상기 패킷데이터의 IP 헤더영역에 포함된 넥스트 헤더 필드값을 참조하여 그 패킷데이터의 프로토콜 종류를 확인할 수 있다. 상기 넥스트 헤더 필드값이 6인 경우에는 상기 패킷데이터의 프로토콜은 TCP 방식이다(S210).First, the header analyzer 20 receives the IPv6 packet data (S200) and checks the protocol type of the packet data by referring to a next header field value included in the IP header area of the packet data. If the next header field value is 6, the protocol of the packet data is a TCP method (S210).

상기 헤더분석부(20)는 TCP 방식일 때 발생가능한 동적 공격 유형 중 탐지하고자 하는 동적 공격명을 설정한다. 이때 발생가능한 대표적인 동적 공격인 SYN 플로딩 공격을 예로 든다. 상기 SYN 플로딩 공격은 연결지향형 프로토콜인 TCP의 허점을 이용한 서비스거부공격 방식이다. 상기 SYN 플로딩 공격은 공격자 컴퓨터에서 공격대상 컴퓨터로 SYN(SYNchronizing segment) 신호를 보내는 과정만을 진행하며, FIN(FINish flag) 신호를 보내는 과정을 생략함으로써 공격대상 컴퓨터가 ACK(ACKnowledgement) 신호를 계속 기다리게 하는 동적 공격이다. 상기 TCP 헤더영역에 포함된 상기 제어비트 중 SYN 플래그(flag)의 값이 1인 경우가 이에 해당될 수 있다(S220). 참고로 상기 헤더분석부(20)는 상기 TCP 헤더영역에 포함된 필드값들을 참조하여 발생가능한 동적 공격명을 설정할 수 있다.The header analyzer 20 sets a dynamic attack name to be detected among the dynamic attack types that can occur when the TCP method is used. Take the SYN floating attack, a representative dynamic attack that can occur at this time. The SYN floating attack is a denial of service attack using a loophole of the connection-oriented protocol TCP. The SYN floating attack proceeds only with sending a SYN (Synchronizing Segment) signal from the attacker's computer to the target computer, and omits the process of sending a FIN (FINish flag) signal so that the target computer continues to wait for an ACK (ACKnowledgement) signal. Is a dynamic attack. The case where the value of the SYN flag is 1 among the control bits included in the TCP header area may correspond to this (S220). For reference, the header analyzer 20 may set a dynamic attack name that may occur by referring to field values included in the TCP header area.

이로써 상기 헤더분석부(20)는 소스IP주소, 목적지IP주소, SYN flooding이 포함된 키 값을 확인하여 이를 상기 맵테이블 관리부(40)로 넘겨준다(S222).Thus, the header analyzer 20 checks the key value including the source IP address, the destination IP address, and the SYN flooding, and hands it over to the map table manager 40 (S222).

상기 맵테이블 관리부(40)는 상기 맵테이블(30)을 액세스하고 상기 키 값에 해당되는 패킷데이터가 상기 맵테이블(30)에 저장되어 있는지를 검사한다(S230). The map table manager 40 accesses the map table 30 and checks whether packet data corresponding to the key value is stored in the map table 30 (S230).

상기 키 값에 해당하는 패킷데이터가 상기 맵테이블(30)에 이미 저장된 경우 상기 맵테이블 관리부(40)는 상기 맵테이블(30)에 저장된 값 중 목적지 포트 번호(Destination Port Number)를 참조하여 유입된 패킷데이터의 목적지 포트 번호와 동일한지 확인한다(S232). 상기 목적지 포트 번호는 상기 패킷데이터를 어느 응용 프로그램이 수신해야 하는지를 구분하기 위해 사용된다. 그러므로 상기 맵테이블(30)에 상기 키 값이 저장되었더라도 상기 목적지 포트 번호가 상이한 경우 상기 패킷데이터와 그 이전에 유입된 패킷데이터가 동일 패킷이 될 수 없다. When packet data corresponding to the key value is already stored in the map table 30, the map table manager 40 is introduced with reference to a destination port number among values stored in the map table 30. Check whether the packet data is the same as the destination port number (S232). The destination port number is used to distinguish which application program should receive the packet data. Therefore, even if the key value is stored in the map table 30, if the destination port number is different, the packet data and the packet data previously introduced cannot be the same packet.

상기 목적지 포트 번호가 동일한 경우 상기 맵테이블 관리부(40)는 상기 맵테이블(30)의 카운트를 증가시킨다(S240). If the destination port number is the same, the map table manager 40 increases the count of the map table 30 (S240).

반면에 제 230단계의 수행 결과 상기 키 값이 상기 맵테이블(30)에 미존재하는 경우 또는 제 232단계에서 상기 목적지 포트 번호가 미일치하는 경우, 상기 맵테이블 관리부(40)는 상기 맵테이블(30)에 상기 키 값을 추가시킨다(S242). 물론 상기 추가된 패킷데이터에 따른 카운트는 정해진 초기값으로 상기 맵테이블(30)에 저장된다. 이때 상기 키 값과 함께 상기 목적지 포트 번호가 상기 맵테이블(30)에 저장됨이 바람직하다.On the other hand, if the key value does not exist in the map table 30 as a result of performing step 230 or if the destination port number does not match in step 232, the map table manager 40 determines the map table ( In step S242, the key value is added. Of course, the count according to the added packet data is stored in the map table 30 with a predetermined initial value. In this case, it is preferable that the destination port number is stored in the map table 30 together with the key value.

제 250단계에서, 그리고 상기 패킷처리부(50)는 상기 카운트값과 임계값을 비교하고, 그 패킷데이터의 동적 공격 여부를 판단한다. 상기 판단결과에 따라 상기 패킷데이터를 차단(S252) 또는 통과시킨다(S254).In step 250, the packet processing unit 50 compares the count value with a threshold value and determines whether the packet data is a dynamic attack. According to the determination result, the packet data is blocked (S252) or passed (S254).

한편, 제 210단계에서 넥스트 헤더값이 6이 아니거나 제 220단계에서 SYN flag값이 1이 아닌 경우 상기 SYN 플로딩 공격 이외의 동적 공격을 탐지하는 로직을 통해 상기 패킷데이터가 처리된다(S260).On the other hand, if the next header value is not 6 in step 210 or the SYN flag value is not 1 in step 220, the packet data is processed through logic for detecting a dynamic attack other than the SYN floating attack (S260). .

도 3b는 패킷데이터가 UDP 패킷데이터인 경우이다.3B illustrates a case where the packet data is UDP packet data.

먼저, 상기 헤더분석부(20)는 IPv6 패킷데이터를 전달받고(S300) 상기 패킷데이터의 프로토콜 종류를 확인한다. 상기 넥스트 헤더 필드값이 17인 경우에 상기 패킷데이터의 프로토콜은 UDP 방식이다(S310).First, the header analyzer 20 receives the IPv6 packet data (S300) and checks the protocol type of the packet data. When the next header field value is 17, the protocol of the packet data is UDP (S310).

상기 헤더분석부(20)는 UDP 방식일 때 발생가능한 동적 공격 유형 중 탐지하고자 하는 동적 공격명을 설정한다(S320). 이때 발생가능한 대표적인 동적 공격인 UDP 플로딩 공격을 예로 든다. 상기 UDP 플로딩 공격도 상기 SYN 플로딩 공격과 같은 서비스거부공격에 속한다. 이는 UDP를 이용하여 클라이언트가 서버에 가상의 데이터를 연속적으로 보내어 서버의 부하 및 네트워크의 과부하를 발생시켜 정상적인 서비스를 하지 못하도록 하는 동적 공격이다.The header analyzer 20 sets a dynamic attack name to be detected among dynamic attack types that can occur when the UDP method is used (S320). For example, consider UDP floating attack, a typical dynamic attack that can occur. The UDP floating attack also belongs to the same service denial attack as the SYN floating attack. This is a dynamic attack that uses UDP to send virtual data to the server continuously, causing server load and network overload to prevent normal service.

제 322단계에서 상기 헤더분석부(20)는 소스IP주소, 목적지IP주소, UDP flooding이 포함된 키 값을 확인하여 이를 상기 맵테이블 관리부(40)로 넘겨준다.In step 322, the header analyzer 20 checks a key value including a source IP address, a destination IP address, and UDP flooding, and hands it over to the map table manager 40.

상기 맵테이블 관리부(40)는 상기 맵테이블(30)을 액세스하고 상기 키 값에 해당되는 패킷데이터가 상기 맵테이블(30)에 저장되어 있는지를 검사한다(S330). The map table manager 40 accesses the map table 30 and checks whether packet data corresponding to the key value is stored in the map table 30 (S330).

상기 키 값에 해당하는 패킷데이터가 상기 맵테이블(30)에 이미 저장된 경우 상기 맵테이블 관리부(40)는 상기 맵테이블(30)의 카운트를 증가시킨다(S332). If packet data corresponding to the key value is already stored in the map table 30, the map table manager 40 increments the count of the map table 30 (S332).

반면에 상기 검색결과 상기 키 값이 상기 맵테이블(30)에 미존재하는 경우, 상기 맵테이블 관리부(40)는 상기 맵테이블(30)에 상기 키 값을 추가시킨다(S334). 물론 상기 추가된 패킷데이터에 따른 카운트는 정해진 초기값으로 상기 맵테이블(30)에 저장된다. On the other hand, if the key value does not exist in the map table 30 as a result of the search, the map table manager 40 adds the key value to the map table 30 (S334). Of course, the count according to the added packet data is stored in the map table 30 with a predetermined initial value.

그리고 상기 패킷처리부(50)는 상기 카운트값과 임계값을 비교하고, 그 패킷데이터의 동적 공격 여부를 판단한다(S340). 상기 판단결과에 따라 상기 패킷데이터를 차단(S342) 또는 통과시킨다(S344).The packet processing unit 50 compares the count value with a threshold value and determines whether the packet data is a dynamic attack (S340). According to the determination result, the packet data is blocked (S342) or passed (S344).

한편, 제 310단계에서 넥스트 헤더값이 17이 아닌 경우 상기 UDP 플로딩 공격 이외의 동적 공격을 탐지하는 로직을 통해 상기 패킷데이터가 처리된다(S350).On the other hand, if the next header value is not 17 in step 310, the packet data is processed through logic for detecting a dynamic attack other than the UDP floating attack (S350).

도 3c는 패킷데이터가 ICMPv6 패킷데이터인 경우이다. 상기 ICMPv6은 기존의 ICMPv4보다 개선된 제어 프로토콜로 통신 중에 발생하는 에러를 표시하거나 정보를 전달하기 위해 사용된다. 그리고 도 3c에서는 발생가능한 동적 공격으로 DAD(Duplicate Address Detection)-NA 메시지 플로딩 공격과 PING 플로딩 공격을 예로 든다. 3C shows a case where the packet data is ICMPv6 packet data. The ICMPv6 is an improved control protocol than the existing ICMPv4, and is used for displaying information or transmitting errors occurring during communication. In FIG. 3C, examples of a dynamic attack that may occur include a DAD (Duplicate Address Detection) -NA message floating attack and a PING floating attack.

상기 헤더분석부(20)는 IPv6 패킷데이터를 전달받고(S400) 상기 패킷데이터의 프로토콜 방식을 확인한다. 상기 넥스트 헤더 필드값이 58인 경우에 상기 패킷데이터의 프로토콜은 ICMPv6 방식이다(S410).The header analyzer 20 receives the IPv6 packet data (S400) and checks the protocol method of the packet data. If the next header field value is 58, the protocol of the packet data is ICMPv6 (S410).

상기 DAD-NA 메시지 플로딩 공격과 PING 플로딩 공격은 ICMPv6 헤더영역에 포함된 타입(Type) 필드값을 통해 구분될 수 있다(S412). The DAD-NA message floating attack and the PING floating attack may be distinguished through a type field value included in the ICMPv6 header area (S412).

먼저, 상기 타입 필드값이 136일 때 상기 DAD-NA 플로딩 공격을 동적 공격명으로 설정한다(S420). First, when the type field value is 136, the DAD-NA floating attack is set as a dynamic attack name (S420).

상기 DAD-NA 메시지 플로딩 공격은 IPv6 패킷데이터에서만 발생가능하다. 이는 이웃 요청(Neighbor Solicitation, 이후 NS라 칭함) 메시지와 이웃 통지(Neighbor Advertisement, 이후 NA라 칭함) 메시지를 통해 비상태형 주소 자동 설정시 그 취약성을 이용하여 라우터나 게이트웨이의 성능을 저하시키는 공격이다. The DAD-NA message floating attack can only occur in IPv6 packet data. It is an attack that degrades the performance of routers or gateways by exploiting the vulnerability when autonomous address autoconfiguration is performed through neighbor solicitation (hereinafter referred to as NS) message and neighbor advertisement (hereinafter referred to as NA) message.

이때, 상기 NS 메시지는 주소를 생성한 호스트가 해당 주소를 중복 사용하는 호스트를 감지하기 위해 내부의 모든 호스트에게 해당 주소를 쓰고 있는지 요청하는 메시지이고, 상기 NA 메시지는 상기 NS 메시지에 대한 대답으로 해당 주소를 사용하고 있다는 대답 메시지이다. In this case, the NS message is a message for requesting whether the host generating the address writes the address to all the internal hosts in order to detect a host using the same address, and the NA message corresponds to the NS message. The reply message says you are using an address.

상기 헤더분석부(20)는 타입 필드값, DAD-NA flooding이 포함된 키 값을 확인하여 이를 상기 맵테이블 관리부(40)로 넘겨준다(S422).The header analyzer 20 checks a key value including a type field value and DAD-NA flooding, and passes it to the map table manager 40 (S422).

상기 맵테이블 관리부(40)는 상기 맵테이블(30)을 액세스하고 상기 키 값에 해당되는 패킷데이터가 상기 맵테이블(30)에 저장되어 있는지를 검사한다(S430). The map table manager 40 accesses the map table 30 and checks whether packet data corresponding to the key value is stored in the map table 30 (S430).

상기 키 값이 상기 맵테이블(30)에 이미 저장된 경우 상기 맵테이블(30)의 NA 카운트를 증가시키고(S432), 상기 키 값이 상기 맵테이블(30)에 미존재하는 경우 상기 맵테이블(30)에 상기 키 값을 추가시킨다(S434). 물론 상기 추가된 패킷데이터에 따른 NA 카운트는 정해진 초기값으로 상기 맵테이블(30)에 저장된다. 이때 상기 NA 카운트는 상기 타입 필드값이 136인 패킷데이터에 대한 카운트를 나타냄이 바람직하다. If the key value is already stored in the map table 30, the NA count of the map table 30 is increased (S432). If the key value does not exist in the map table 30, the map table 30 is increased. In step S434, the key value is added. Of course, the NA count according to the added packet data is stored in the map table 30 with a predetermined initial value. In this case, the NA count preferably represents a count of packet data having the type field value of 136.

그리고 상기 패킷처리부(50)는 상기 NA 카운트값과 임계값을 비교한 후(S436) 상기 NA 카운트값이 상기 임계값을 초과한 경우 상기 NA 카운트값을 NS 카운트값과 비교한다(S438). 이때 상기 NS 카운트는 상기 타입 필드값이 135인 패킷데이터에 대한 카운트를 나타냄이 바람직하다. The packet processor 50 compares the NA count value with a threshold value (S436) and then compares the NA count value with an NS count value when the NA count value exceeds the threshold value (S438). In this case, the NS count preferably represents a count for packet data having the type field value of 135.

상기 패킷처리부(50)는 상기 NA 카운트값이 상기 임계값과 NS 카운트값을 모두 초과하는 경우 상기 패킷데이터를 차단시킨다(S450). 이는 상기 DAD-NA 플로딩 공격시 NS 메시지 수가 NA 메시지 수보다 현저히 적어지게 되기 때문이다. The packet processing unit 50 blocks the packet data when the NA count value exceeds both the threshold value and the NS count value (S450). This is because the number of NS messages becomes significantly smaller than the number of NA messages in the DAD-NA floating attack.

반면에 상기 NA 카운트값이 상기 임계값을 초과하지 못한 경우 또는 초과하더라도 상기 NS 카운트값을 초과하지 못한 경우, 상기 패킷처리부(50)는 상기 패킷데이터를 통과시킨다(S452).On the other hand, when the NA count value does not exceed the threshold value or the NS count value does not exceed even if the threshold value is exceeded, the packet processing unit 50 passes the packet data (S452).

다음으로, 상기 타입 필드값이 128일 때(S460) 상기 PING 플로딩 공격을 동적 공격명으로 설정한다(S462). Next, when the type field value is 128 (S460), the PING floating attack is set as a dynamic attack name (S462).

정상적으로 작동하는지 여부를 확인하기 위한 핑 테스트를 악의적으로 이용하는 상기 PING 플로딩 공격 역시 서비스거부공격에 속한다. PING(Packet InterNet Groper)은 반향 요구(echo request) 메시지를 특정 호스트나 라우터에 보내어, 이에 대한 반향 응답(echo reply) 메시지를 수신함으로써, 연결성과 왕복시간(Round Trip Time, RTT)을 알아보기 위한 명령어이다. 상기 PING 플로딩 공격은 대상 시스템에 상기 반향 요구 메시지가 담긴 패킷을 계속해서 보내 대상 시스템이 이에 응답하느라 다른 일을 하지 못하도록 하는 동적 공격이다. The PING floating attack, which maliciously uses a ping test to check whether it is operating normally, is also a denial of service attack. Packet InterNet Groper (PING) sends echo request messages to specific hosts or routers and receives echo reply messages to determine connectivity and round trip time (RTT). Command. The PING floating attack is a dynamic attack that continuously sends a packet containing the echo request message to a target system so that the target system does not do anything else in response.

이로써 상기 헤더분석부(20)는 타입 필드값, PING flooding이 포함된 키 값 을 확인하여 이를 상기 맵테이블 관리부(40)로 넘겨준다(S464).As a result, the header analyzer 20 checks the key value including the type field value and the PING flooding, and hands it to the map table manager 40 (S464).

상기 맵테이블 관리부(40)는 상기 키 값의 유무에 따라(S470) 상기 패킷데이터에 대한 카운트를 증가(S472) 또는 상기 키 값을 추가시킨다(S474).The map table manager 40 increases the count for the packet data (S472) or adds the key value (S474) according to the presence or absence of the key value (S470).

그리고 상기 패킷처리부(50)는 상기 카운트값과 임계값의 비교 결과에 따라(S476) 상기 패킷데이터를 차단(S480) 또는 통과시킨다(S482).The packet processing unit 50 blocks (S480) or passes (S482) the packet data according to the comparison result of the count value and the threshold value (S476).

한편, 제 410단계에서 넥스트 헤더값이 58이 아닌 경우 또는 제 460단계에서 상기 타입 필드값이 128이 아닌 경우, 상기 패킷데이터는 DAD-NA 메시지 플로딩 공격과 상기 PING 플로딩 공격 이외의 동적 공격을 탐지하는 로직을 통해 처리된다(S490).On the other hand, if the next header value is not 58 in step 410 or the type field value is not 128 in step 460, the packet data may be a dynamic attack other than a DAD-NA message floating attack and the PING floating attack. It is processed through the logic to detect (S490).

도 4는 본 발명에 의한 제 2실시예에 따른 네트워크 보안장치 구성도가 도시되어 있다. 4 is a block diagram of a network security device according to a second embodiment of the present invention.

제 2실시예는 제 1실시예의 구성과 거의 동일하며 다만 패킷데이터의 로그정보를 분석하여 동적 공격을 탐지하는 구성이다. 즉, 상기 버전판단부(10), 맵테이블(30), 맵테이블 관리부(40), 패킷처리부(50)의 구성은 동일하고 애플리케이션 영역으로 넘어가는 패킷데이터의 로그 생성시 기록된 로그정보를 분석하여 상기 키 값을 확인하는 로그분석부(60)가 구비된다. The second embodiment is almost the same as the configuration of the first embodiment except that the dynamic attack is detected by analyzing log information of the packet data. That is, the configuration of the version determining unit 10, the map table 30, the map table management unit 40, and the packet processing unit 50 is the same, and analyzes the log information recorded when generating a log of packet data passing to the application area. It is provided with a log analysis unit 60 to check the key value.

도 5에는 본 발명에 의한 제 2실시예에 따른 네트워크 보안장치를 이용한 동적 공격 탐지과정을 보인 전체 흐름도가 도시되어 있다.5 is a flowchart illustrating a dynamic attack detection process using a network security device according to a second embodiment of the present invention.

다른 시스템으로부터 발생된 패킷데이터의 동적 공격 여부를 판단하기 위하여 본 발명에 의한 제 2실시예에 따른 보안장치로 유입되게 된다(S500).In order to determine whether a dynamic attack of packet data generated from another system is introduced into the security apparatus according to the second embodiment of the present invention (S500).

상기 유입된 패킷데이터는 먼저 버전판단부(10)로 전달된다(S510). The introduced packet data is first transmitted to the version determining unit 10 (S510).

만일 상기 유입된 패킷데이터의 주소체계가 IPv6이 아닌 경우에는 이를 처리할 수 있는 다른 보안장치로 전송되게 된다(S512).If the address system of the incoming packet data is not IPv6, it is transmitted to another security device capable of processing the data (S512).

그러나 상기 유입된 패킷데이터의 주소체계가 IPv6인 경우 이 패킷데이터는 애플리케이션 영역으로 전달된다. 이때 패킷데이터의 로그정보가 생성되며, 상기 로그분석부(60)는 상기 생성된 로그정보를 분석한다(S520).However, if the address system of the incoming packet data is IPv6, the packet data is transferred to the application area. At this time, log information of the packet data is generated, and the log analyzer 60 analyzes the generated log information (S520).

상기 로그분석부(60)는 상기 로그정보를 분석하여 상기 패킷데이터에 관련된 소스IP주소, 목적지IP주소, 동적 공격명 등의 키 값을 확인한다(S522). 그리고 상기 키 값이 맵테이블(30)에서 관리되도록 상기 맵테이블 관리부(40)로 전달한다. The log analyzer 60 analyzes the log information and checks key values such as a source IP address, a destination IP address, a dynamic attack name, etc. related to the packet data (S522). The key value is transmitted to the map table manager 40 so that the key value is managed in the map table 30.

상기 맵테이블 관리부(40)는 상기 전달된 키 값을 참조하여 상기 맵테이블(30)에 액세스하여 동일한 패킷데이터가 존재하는지를 검사하고(S530), 그 결과에 따라 상기 패킷데이터에 대한 카운트를 증가(S532) 또는 초기값의 카운트와 함께 상기 키 값을 맵테이블(30)에 추가시킨다(S534).The map table manager 40 accesses the map table 30 by referring to the transmitted key value and checks whether the same packet data exists (S530), and increases the count for the packet data according to the result ( S532) or the key value is added to the map table 30 together with the count of the initial value (S534).

그리고 상기 패킷처리부(50)는 상기 카운트값과 임계값을 비교한다(S540). The packet processor 50 compares the count value with a threshold value (S540).

상기 카운트가 상기 임계값을 초과하는 경우 상기 패킷처리부(50)는 상기 패킷데이터가 발생된 시스템으로부터의 패킷데이터를 일정시간 차단하며 이미 애플리케이션 영역으로 넘어간 상기 패킷데이터를 처리한다(S542). 즉, 더 이상 상기 패킷데이터에 대한 서비스가 제공되지 않게 한다. 예컨대, 애플리케이션 영역 내에 애플리케이션 영역으로 전달되는 패킷데이터가 임시 저장되는 임시저장부(미도시)가 구비되고, 상기 임시저장부에 저장된 상기 패킷데이터가 동적 공격에 해당되는 경우 상기 패킷처리부(50)는 이를 드롭(drop)시킨다. If the count exceeds the threshold, the packet processing unit 50 blocks the packet data from the system where the packet data is generated for a predetermined time and processes the packet data already transferred to the application area (S542). That is, the service for the packet data is no longer provided. For example, a temporary storage unit (not shown) for temporarily storing packet data delivered to the application region is provided in the application region, and when the packet data stored in the temporary storage corresponds to a dynamic attack, the packet processing unit 50 Drop it.

반면, 상기 카운트가 상기 임계값을 초과하지 않는 경우 제 500단계부터 반복 수행된다.On the other hand, if the count does not exceed the threshold value is repeated from step 500.

본 발명의 권리는 위에서 설명된 실시예에 한정되지 않고 청구범위에 기재된 바에 의해 정의되며, 본 발명의 기술분야에서 통상의 지식을 가진 자가 청구범위에 기재된 권리범위 내에서 다양한 변형과 개작을 할 수 있다는 것은 자명하다.It is to be understood that the invention is not limited to the disclosed embodiments, but is capable of many modifications and alterations, all of which are within the scope of the appended claims. It is self-evident.

즉, 유입되는 패킷데이터에 포함된 프로토콜과 해당 프로토콜의 헤더 정보를 참조하여 예상가능한 동적 공격을 탐지하는 로직은 다양하게 추가될 수 있다.That is, a logic for detecting a predictable dynamic attack by referring to a protocol included in the incoming packet data and header information of the corresponding protocol may be added in various ways.

위에서 상세히 설명한 바와 같은 본 발명에 의한 동적 공격에 대한 네트워크 보안 장치 및 방법에서는 다음과 같은 효과를 얻을 수 있다.In the network security device and method for dynamic attack according to the present invention as described in detail above, the following effects can be obtained.

먼저, 본 발명에서는 IPv4 환경에서 적용되는 동적 공격 탐지가 IPv6 환경에서도 적용될 수 있어 IPv6을 기반으로 한 동적 공격을 탐지할 수 있는 이점이 있다.First, in the present invention, the dynamic attack detection applied in the IPv4 environment can be applied in the IPv6 environment, and thus there is an advantage in that the dynamic attack based on the IPv6 can be detected.

또 IPv6환경에서만 발생할 수 있는 동적 공격 유형들도 탐지할 수 있고 차후발견되는 동적 공격 탐지 로직을 쉽게 추가시킬 수 있는 이점이 있다.In addition, it is possible to detect dynamic attack types that can only occur in IPv6 environment, and it is easy to add dynamic attack detection logic that is discovered later.

그리고 본 발명에서는 동적 공격의 탐지가 커널 영역에서 수행되어 처리 속도가 향상되는 이점이 있다.In addition, in the present invention, the detection of the dynamic attack is performed in the kernel region, thereby improving the processing speed.

Claims (27)

네트워크로부터 유입된 패킷데이터의 인터넷 프로토콜 버전정보를 확인하는 버전판단부와;A version determining unit which checks Internet protocol version information of the packet data introduced from the network; 상기 버전판단부에서 전달된 패킷데이터의 헤더정보를 분석하여 패킷데이터에 대한 키 값을 확인하는 헤더분석부와;A header analyzing unit which analyzes header information of the packet data transmitted from the version determining unit and confirms a key value for the packet data; 상기 패킷 데이터의 프로토콜 별로 유입된 횟수가 저장되는 테이블 형태로 구성되는 맵테이블에, 상기 키 값에 따라 프로토콜별로 상기 패킷데이터에 대한 카운트를 누적 또는 생성하여 저장하는 맵테이블 관리부; 그리고 A map table manager configured to accumulate or generate a count for the packet data for each protocol according to the key value in a map table configured to form a table in which the number of times of inflow of the packet data for each protocol is stored; And 상기 카운트와 관리자에 의해 미리 설정된 임계값의 비교 결과에 따라 상기 패킷데이터를 차단 또는 통과시키는 패킷처리부를 포함하여 구성됨을 특징으로 하는 동적 공격에 대한 네트워크 보안 장치.And a packet processing unit for blocking or passing the packet data according to a result of comparing the count with a threshold preset by an administrator. 제 1항에 있어서,The method of claim 1, 상기 버전판단부, 헤더분석부, 맵테이블 관리부, 패킷처리부는 보안 시스템의 커널 영역에 구비됨을 특징으로 하는 동적 공격에 대한 네트워크 보안 장치.The version determining unit, the header analyzing unit, the map table management unit, and the packet processing unit are provided in the kernel region of the security system. 제 1항 또는 제 2항에 있어서,The method according to claim 1 or 2, 상기 버전판단부는,The version determination unit, IPv6(Internet Protocol version 6) 기반의 패킷데이터만을 상기 헤더분석부로 전달함을 특징으로 하는 동적 공격에 대한 네트워크 보안 장치.Network security device for dynamic attack, characterized in that the forwarding only IPv6 (Internet Protocol version 6) -based packet data to the header analysis unit. 제 1항 또는 제 2항에 있어서,The method according to claim 1 or 2, 상기 헤더분석부는,The header analysis unit, 상기 헤더정보로부터 상기 패킷데이터의 프로토콜을 구분하고, 상기 프로토콜별로 소스IP주소, 목적지IP주소, 동적 공격명과 같은 키 값을 확인함을 특징으로 하는 동적 공격에 대한 네트워크 보안 장치.And classifying a protocol of the packet data from the header information, and identifying key values such as a source IP address, a destination IP address, and a dynamic attack name for each protocol. 네트워크로부터 유입된 패킷데이터의 인터넷 프로토콜 버전정보를 확인하는 버전판단부와;A version determining unit which checks Internet protocol version information of the packet data introduced from the network; 상기 패킷데이터의 로그 생성시 기록된 로그정보를 분석하여 패킷데이터에 대한 키 값을 확인하는 로그분석부와;A log analysis unit for analyzing the log information recorded when generating the log of the packet data and checking a key value for the packet data; 상기 패킷 데이터의 프로토콜 별로 유입된 횟수가 저장되는 테이블 형태로 구성되는 맵테이블에, 상기 키 값에 따라 프로토콜별로 상기 패킷데이터에 대한 카운트를 누적 또는 생성하여 저장하는 맵테이블 관리부; 그리고 A map table manager configured to accumulate or generate a count for the packet data for each protocol according to the key value in a map table configured to form a table in which the number of times of inflow of the packet data for each protocol is stored; And 상기 카운트와 관리자에 의해 미리 설정된 임계값의 비교 결과에 따라 상기 패킷데이터를 차단 또는 통과시키는 패킷처리부를 포함하여 구성됨을 특징으로 하는 동적 공격에 대한 네트워크 보안 장치.And a packet processing unit for blocking or passing the packet data according to a result of comparing the count with a threshold preset by an administrator. 제 5항에 있어서,6. The method of claim 5, 상기 버전판단부, 로그분석부, 맵테이블 관리부, 패킷처리부는 보안 시스템의 커널 영역에 구비됨을 특징으로 하는 동적 공격에 대한 네트워크 보안 장치.The version determining unit, the log analyzer, the map table manager, and the packet processor are provided in the kernel region of the security system. 제 5항 또는 제 6항에 있어서,The method according to claim 5 or 6, 상기 로그분석부는,The log analysis unit, 상기 로그정보로부터 상기 패킷데이터의 프로토콜을 구분하고, 상기 프로토콜별로 소스IP주소, 목적지IP주소, 동적 공격명과 같은 키 값을 확인함을 특징으로 하는 동적 공격에 대한 네트워크 보안 장치.Distinguishing protocols of the packet data from the log information, and identifying key values such as a source IP address, a destination IP address, and a dynamic attack name for each protocol. 제 5항 또는 제 6항에 있어서,The method according to claim 5 or 6, 상기 버전판단부는,The version determination unit, IPv6 기반의 패킷데이터만을 상기 로그분석부로 전달함을 특징으로 하는 동적 공격에 대한 네트워크 보안 장치.Network security device for dynamic attack, characterized in that for transmitting only the IPv6-based packet data to the log analysis unit. 삭제delete 제 1항 또는 제 5항에 있어서,The method according to claim 1 or 5, 상기 맵테이블 관리부는,The map table management unit, 상기 맵테이블을 검색하여 패킷데이터에 대한 키 값의 저장유무를 확인하는 것을 특징으로 하는 동적 공격에 대한 네트워크 보안 장치.And retrieving whether the key value for the packet data is stored by searching the map table. 제 10항에 있어서,The method of claim 10, 상기 맵테이블 관리부는,The map table management unit, 상기 키 값이 상기 맵테이블에 이미 저장되어 있는 경우 상기 맵테이블의 카운트를 증가시키고, 상기 키 값이 상기 맵테이블에 미존재하는 경우 상기 맵테이블에 상기 키 값을 추가시킴을 특징으로 하는 동적 공격에 대한 네트워크 보안 장치.If the key value is already stored in the map table, the count of the map table is increased, and if the key value does not exist in the map table, the dynamic value is added to the map table. Network security device for. 유입되는 패킷데이터의 인터넷 프로토콜 버전을 확인하는 버전판단단계와;A version determining step of checking an internet protocol version of incoming packet data; 상기 패킷데이터의 헤더정보를 참조하여 패킷데이터에 대한 키 값을 확인하는 헤더분석단계와;A header analysis step of identifying a key value for the packet data by referring to the header information of the packet data; 상기 패킷 데이터의 프로토콜 별로 유입된 횟수가 저장되는 테이블 형태로 구성되는 맵테이블에, 상기 키 값에 따라 프로토콜별로 상기 패킷데이터에 대한 카운트를 누적 또는 생성하는 카운트취득단계; 그리고A count acquiring step of accumulating or generating a count for the packet data for each protocol according to the key value in a map table configured to form a table in which the number of times of inflow of the packet data for each protocol is stored; And 상기 카운트와 관리자에 의해 미리 설정된 임계값의 비교 결과에 따라 상기 패킷데이터를 차단 또는 통과시키는 패킷처리단계를 포함하여 구성됨을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.And a packet processing step of blocking or passing the packet data according to a result of comparing the count with a threshold preset by an administrator. 제 12항에 있어서,13. The method of claim 12, 상기 버전판단단계, 헤더분석단계, 카운트취득단계 그리고 패킷처리단계가 보안 시스템의 커널 영역에서 실행됨을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.And the version determining step, header analysis step, count acquisition step, and packet processing step are executed in the kernel region of the security system. 제 12항에 있어서,13. The method of claim 12, 상기 헤더분석단계는,The header analysis step, 상기 버전판단단계에서 IPv6 기반으로 확인된 패킷데이터의 헤더정보를 분석함을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.Network security method for dynamic attack, characterized in that for analyzing the header information of the packet data identified in the version determination step based on IPv6. 제 12항에 있어서,13. The method of claim 12, 상기 헤더분석단계의 상기 키 값은, The key value of the header analysis step, 상기 헤더정보로부터 구분된 프로토콜별로 발생가능한 동적 공격명이 포함됨을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.And a dynamic attack name that can be generated for each protocol separated from the header information. 제 12항에 있어서,13. The method of claim 12, 상기 패킷처리단계는,The packet processing step, 상기 카운트 값이 상기 임계값을 초과할 경우 동적 공격으로 상기 패킷데이터를 차단하고, 상기 카운트 값이 상기 임계값 이하일 경우 상기 패킷데이터를 애플리케이션 영역으로 전달시킴을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.When the count value exceeds the threshold, the packet data is blocked by a dynamic attack, and when the count value is less than or equal to the threshold value, the packet data is transmitted to an application area. . 유입되는 패킷데이터의 인터넷 프로토콜 버전을 확인하는 버전판단단계와;A version determining step of checking an internet protocol version of incoming packet data; 상기 패킷데이터의 로그 생성시 기록된 로그정보를 분석하여 패킷데이터에 대한 키 값을 확인하는 로그분석단계와;A log analysis step of analyzing log information recorded when generating the log of the packet data to check a key value for the packet data; 상기 패킷 데이터의 프로토콜 별로 유입된 횟수가 저장되는 테이블 형태로 구성되는 맵테이블에, 상기 키 값에 따라 프로토콜별로 상기 패킷데이터에 대한 카운트를 누적 또는 생성하는 카운트취득단계; 그리고A count acquiring step of accumulating or generating a count for the packet data for each protocol according to the key value in a map table configured to form a table in which the number of times of inflow of the packet data for each protocol is stored; And 상기 카운트와 관리자에 의해 미리 설정된 임계값의 비교 결과에 따라 상기 패킷데이터를 차단 또는 통과시키는 패킷처리단계를 포함하여 구성됨을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.And a packet processing step of blocking or passing the packet data according to a result of comparing the count with a threshold preset by an administrator. 제 17항에 있어서,18. The method of claim 17, 상기 버전판단단계, 로그분석단계, 카운트취득단계 그리고 패킷처리단계가 보안 시스템의 커널 영역에서 실행됨을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.Wherein the version determining step, log analysis step, count acquisition step, and packet processing step are executed in the kernel region of a security system. 제 17항에 있어서,18. The method of claim 17, 상기 로그분석단계는,The log analysis step, 상기 버전판단단계에서 IPv6 기반으로 확인된 패킷데이터의 로그정보를 분석함을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.Network security method for a dynamic attack, characterized in that for analyzing the log information of the packet data confirmed on the basis of IPv6 in the version determination step. 제 17항에 있어서,18. The method of claim 17, 상기 로그분석단계의 상기 키 값은, The key value of the log analysis step, 상기 로그정보로부터 구분된 프로토콜별로 발생가능한 동적 공격명이 포함됨을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.And a dynamic attack name that can be generated for each protocol separated from the log information. 제 17항에 있어서,18. The method of claim 17, 상기 패킷처리단계는,The packet processing step, 상기 카운트 값이 상기 임계값을 초과할 경우 동적 공격으로 판단하여 상기 패킷데이터가 발생된 시스템으로부터의 패킷데이터를 일정시간 차단시키며 이미 애플리케이션 영역으로 넘어간 상기 패킷데이터에 대한 서비스가 미제공되게 처리함을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.If the count value exceeds the threshold value, it is determined as a dynamic attack to block the packet data from the system where the packet data is generated for a predetermined time and to provide a service for the packet data that has already been transferred to the application area. How to secure your network against dynamic attacks. 삭제delete 제 12항 또는 제 17항에 있어서,The method according to claim 12 or 17, wherein 상기 카운트취득단계는,The count acquisition step, 상기 키 값이 상기 맵테이블에 이미 저장되어 있는 경우 상기 맵테이블에 저장된 카운트를 증가시키고, 상기 키 값이 상기 맵테이블에 미존재하는 경우 상기 맵테이블에 상기 키 값을 추가시키며 카운트를 함께 생성함을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.If the key value is already stored in the map table, the count stored in the map table is increased, and if the key value does not exist in the map table, the key value is added to the map table and the count is generated together. Network security method for dynamic attack, characterized in that. 제 15항 또는 제 20항에 있어서,The method of claim 15 or 20, 상기 키 값은, The key value is, 상기 패킷데이터에 포함된 프로토콜이 전송 제어 프로토콜(Transmission Control Protocol, TCP)인 경우 목적지 포트(destination port) 번호가 포함됨을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.If the protocol included in the packet data is a transmission control protocol (TCP), a destination port number is included. 제 15항에 있어서,16. The method of claim 15, 상기 동적 공격이 DAD(Duplicate Address Detection)-NA 메시지 플로딩 공격인 경우 상기 패킷처리단계는,If the dynamic attack is a DAD (Duplicate Address Detection) -NA message floating attack, the packet processing step includes: NA(Neighbor Advertisement) 카운트값이 상기 임계값과 NS(Neighbor Solicitation) 카운트값을 모두 초과할 경우 동적 공격으로 판단하여 상기 패킷데이터를 차단시키고, 상기 NA 카운트값이 상기 임계값 이하이거나 초과하더라도 상기 NS 카운트값 이하일 경우 상기 패킷데이터를 애플리케이션 영역으로 전달시킴을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.If the NA (Neighbor Advertisement) count value exceeds both the threshold value and the NS (Neighbor Solicitation) count value, the packet data is determined to be a dynamic attack, and the packet data is blocked even if the NA count value is less than or above the threshold value. The network security method for a dynamic attack, characterized in that for transmitting the packet data to the application area if less than the count value. 제 20항에 있어서,21. The method of claim 20, 상기 동적 공격이 DAD-NA 메시지 플로딩 공격인 경우 상기 패킷처리단계는,The packet processing step when the dynamic attack is a DAD-NA message floating attack, NA 카운트값이 상기 임계값과 NS 카운트값을 모두 초과할 경우 동적 공격으로 판단하여 상기 패킷데이터가 발생된 시스템으로부터의 패킷데이터를 일정시간 차단시키며 이미 애플리케이션 영역으로 넘어간 상기 패킷데이터에 대한 서비스가 미제공되게 처리함을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.If the NA count value exceeds both the threshold value and the NS count value, it is determined as a dynamic attack to block the packet data from the system where the packet data is generated for a predetermined time, and the service for the packet data that has already been transferred to the application area is not provided. Network security method for dynamic attack, characterized in that for processing. 제 25항 또는 제 26항에 있어서,The method of claim 25 or 26, 상기 NA 카운트는 인터넷 제어 메시지 프로토콜(Internet Control Message Protocol for IPv6, ICMPv6) 헤더의 타입 필드값이 136인 패킷데이터에 대한 카운트이고, 상기 NS 카운트는 인터넷 제어 메시지 프로토콜 헤더의 타입 필드값이 135인 패킷데이터에 대한 카운트를 나타냄을 특징으로 하는 동적 공격에 대한 네트워크 보안 방법.The NA count is a count for packet data whose type field value of the Internet Control Message Protocol for IPv6 (ICMPv6) header is 136, and the NS count is a packet whose type field value of the Internet control message protocol header is 135. A method of network security against dynamic attacks, characterized by representing a count of data.
KR1020070024137A 2007-03-12 2007-03-12 Apparatus and method of network security for dynamic attack KR101290036B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070024137A KR101290036B1 (en) 2007-03-12 2007-03-12 Apparatus and method of network security for dynamic attack

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070024137A KR101290036B1 (en) 2007-03-12 2007-03-12 Apparatus and method of network security for dynamic attack

Publications (2)

Publication Number Publication Date
KR20080083494A KR20080083494A (en) 2008-09-18
KR101290036B1 true KR101290036B1 (en) 2013-07-30

Family

ID=40024153

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070024137A KR101290036B1 (en) 2007-03-12 2007-03-12 Apparatus and method of network security for dynamic attack

Country Status (1)

Country Link
KR (1) KR101290036B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050066049A (en) * 2003-12-26 2005-06-30 한국전자통신연구원 Apparatus for protecting dos and method thereof
KR100656483B1 (en) * 2006-02-09 2006-12-11 삼성전자주식회사 Apparatus and method of security on ipv4-ipv6 network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050066049A (en) * 2003-12-26 2005-06-30 한국전자통신연구원 Apparatus for protecting dos and method thereof
KR100656483B1 (en) * 2006-02-09 2006-12-11 삼성전자주식회사 Apparatus and method of security on ipv4-ipv6 network

Also Published As

Publication number Publication date
KR20080083494A (en) 2008-09-18

Similar Documents

Publication Publication Date Title
US10721243B2 (en) Apparatus, system and method for identifying and mitigating malicious network threats
US7564837B2 (en) Recording medium recording a network shutdown control program, and network shutdown device
Jin et al. Hop-count filtering: an effective defense against spoofed DDoS traffic
CN101036369B (en) Offline analysis of packets
US7440406B2 (en) Apparatus for displaying network status
KR100604604B1 (en) Method for securing system using server security solution and network security solution, and security system implementing the same
US8434141B2 (en) System for preventing normal user being blocked in network address translation (NAT) based web service and method for controlling the same
US7039721B1 (en) System and method for protecting internet protocol addresses
JP5050781B2 (en) Malware detection device, monitoring device, malware detection program, and malware detection method
JP2019021294A (en) SYSTEM AND METHOD OF DETERMINING DDoS ATTACKS
JP2006119754A (en) Network-type virus activity detection program, processing method and system
KR20090087437A (en) Methods and apparatus for detecting unwanted traffic in one or more packet networks utilizing string analysis
Lee et al. Defending against spoofed DDoS attacks with path fingerprint
Manna et al. Review of syn-flooding attack detection mechanism
CN110581850A (en) Gene detection method based on network flow
US8819808B2 (en) Host trust report based filtering mechanism in a reverse firewall
WO2019096104A1 (en) Attack prevention
KR101290036B1 (en) Apparatus and method of network security for dynamic attack
JP4753264B2 (en) Method, apparatus, and computer program for detecting network attacks (network attack detection)
JP2005130121A (en) Network management apparatus, method, and program
KR100506889B1 (en) Network Intrusion Detection System with double buffer and the operating method
KR100613904B1 (en) Apparatus and method for defeating network attacks with abnormal IP address
US20050147037A1 (en) Scan detection
JP6740191B2 (en) Attack response system and attack response method
JP2022049717A (en) Communication device

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160701

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170703

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180703

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190708

Year of fee payment: 7