KR101491692B1 - Security device managing multi session and operating method thereof - Google Patents
Security device managing multi session and operating method thereof Download PDFInfo
- Publication number
- KR101491692B1 KR101491692B1 KR20130161564A KR20130161564A KR101491692B1 KR 101491692 B1 KR101491692 B1 KR 101491692B1 KR 20130161564 A KR20130161564 A KR 20130161564A KR 20130161564 A KR20130161564 A KR 20130161564A KR 101491692 B1 KR101491692 B1 KR 101491692B1
- Authority
- KR
- South Korea
- Prior art keywords
- session
- packet
- main
- host
- key
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 전자 기기에 관한 것으로서, 좀 더 구체적으로는 멀티 세션을 관리하는 보안 장치 및 그것의 동작 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an electronic apparatus, and more particularly, to a security apparatus for managing a multi-session and an operation method thereof.
TCP/IP(Transmission Control Protocol/Internet Protocol)란 네트워크 전송 프로토콜로서, 서로 다른 운영체제를 쓰는 컴퓨터들 사이에도 데이터 패킷을 전송할 수 있어 정보 전송을 위한 표준 프로토콜로 사용되고 있다. TCP는 전송 데이터를 일정 단위, 즉 데이터 패킷으로 나누어 전송하는 것에 관한 프로토콜이고, IP는 직접 데이터를 주고 받는 것에 관한 프로토콜이다.TCP / IP (Transmission Control Protocol / Internet Protocol) is a network transmission protocol that is used as a standard protocol for information transmission because it can transmit data packets between computers using different operating systems. TCP is a protocol for transmitting transmission data divided into a predetermined unit, that is, data packets, and IP is a protocol for directly exchanging data.
최근 들어, 무선 랜(예를 들면 와이파이), 모바일 통신 등의 여러 인터페이스들을 가진 무선 단말이 증가함에 따라 다수의 네트워크 링크들을 인지하고 활용할 수 있도록 하는 기능이 부각되고 있다. 다중 경로 TCP(Multi Path TCP)는 네트워크의 트래픽 부하 분산 및 취합의 효과를 얻을 수 있는 장점이 있으며, 따라서 트래픽 요구가 많은 서비스에 신뢰성(reliability)을 제공하기에 적합하다. 또한, 다중 경로 TCP는 여러 개의 세션들(예를 들면 하나의 메인 세션 및 적어도 하나의 서브 세션)을 하나의 큰 세션으로 사용할 수 있도록 자원 풀(resource pooling) 개념을 도입함으로써 보다 큰 버스트를 수용할 수 있게 하며, 다중 경로를 사용함으로써 보다 견고하고 트래픽 혼잡에 신속하게 반응할 수 있도록 해준다.2. Description of the Related Art Recently, as wireless terminals with various interfaces such as a wireless LAN (for example, Wi-Fi) and mobile communication have been increasing in number, functions to recognize and utilize a large number of network links have been highlighted. Multi-path TCP (Multi-path TCP) has advantages of collecting traffic load distribution and aggregation effect of network, and is therefore suitable for providing reliability to a service having a high traffic demand. In addition, multipath TCP can accommodate larger bursts by introducing a resource pooling concept that allows multiple sessions (e.g., one main session and at least one sub-session) to be used as one large session And by using multipath, it can be more robust and responsive to traffic congestion.
기존의 보안 장치의 침입 차단 시스템은 TCP 하에 하나의 세션을 통해 통신되는 데이터 패킷들의 조합으로 데이터 패턴을 분석하고, 공격을 방어한다. 하지만 다중 경로 TCP와 같이 복수의 세션들을 통해 데이터 패킷들이 통신되는 경우, 패턴 분석에 실패하는 경우가 빈번히 발생하게 되며, 이로 인해 네트워크 시스템의 운영상 안정성을 확보하지 못하게 된다.An existing intrusion prevention system of a security device analyzes a data pattern with a combination of data packets communicated through one session under TCP, and defends an attack. However, when data packets are communicated through a plurality of sessions, such as multi-path TCP, the pattern analysis often fails, thereby failing to secure operational stability of the network system.
본 발명의 목적은 네트워크 시스템 상의 보안 성능을 향상시키기 위한 것이다.It is an object of the present invention to improve security performance on a network system.
본 발명의 실시 예에 따른 보안 장치의 동작 방법은 제 1 호스트 및 제 2 호스트 사이에서 전송되는 패킷의 제 1 옵션 정보를 참조하여 멀티 세션이 지원되는지 여부를 판별하는 단계; 상기 통신이 상기 멀티 세션을 지원하는 경우, 상기 패킷의 제 2 옵션 정보를 참조하여 상기 패킷이 메인 세션에 해당하는지 서브 세션에 해당하는지 여부를 판별하는 단계; 상기 패킷이 상기 메인 세션에 해당하는 노멀 패킷인 경우 상기 노멀 패킷으로부터 메인 아이피 및 키(key)를 추출하고 상기 메인 아이피와 관련하여 상기 키를 세션 테이블에 업데이트하는 단계; 및 상기 패킷이 상기 서브 세션에 해당하는 조인 패킷인 경우 상기 조인 패킷으로부터 서브 아이피를 추출하고, 상기 조인 패킷의 제 3 옵션 정보를 참조함으로써 상기 메인 아이피와 관련하여 상기 서브 아이피를 상기 세션 테이블에 업데이트하는 단계를 포함한다.A method of operating a security device according to an exemplary embodiment of the present invention includes: determining whether a multi-session is supported by referring to first option information of a packet transmitted between a first host and a second host; Determining whether the packet corresponds to a main session or a sub-session with reference to second option information of the packet if the communication supports the multi-session; Extracting a main IP and a key from the normal packet when the packet is a normal packet corresponding to the main session and updating the key in the session table with respect to the main IP; Extracting a sub-IP from the join packet if the packet is a join packet corresponding to the sub-session, and updating the sub-IP in the session table with reference to the third option information of the join packet, .
실시 예로서, 상기 서브 아이피를 업데이트하는 단계는 상기 제 3 옵션 정보를 참조하여 상기 메인 아이피와 관련하여 저장된 상기 키를 감지함으로써, 상기 메인 아이피와 관련하여 상기 서브 아이피를 업데이트하는 단계를 포함할 수 있다.As an embodiment, updating the sub-IP may include updating the sub-IP with respect to the main IP by sensing the key stored in association with the main IP with reference to the third option information have.
실시 예로서, 상기 제 3 옵션 정보는 랜덤 넘버, 그리고 상기 키와 상기 랜덤 넘버를 입력으로 연산된 토큰 넘버를 포함할 수 있다.In an embodiment, the third option information may include a random number and a token number calculated by inputting the key and the random number.
실시 예로서, 상기 서브 아이피를 업데이트하는 단계는, 상기 조인 패킷으로부터 상기 랜덤 넘버 및 상기 토큰 넘버를 추출하는 단계; 상기 세션 테이블 내의 복수의 키들 각각과 상기 랜덤 넘버를 입력으로 연산하여 비교 넘버를 생성하는 단계; 및 상기 토큰 넘버와 일치하는 비교 넘버를 감지하고 상기 비교 넘버의 키에 대응하는 상기 메인 아이피와 관련하여 상기 서브 아이피를 업데이트하는 단계를 포함할 수 있다.As an embodiment, updating the sub-IP may include extracting the random number and the token number from the join packet; Generating a comparison number by computing each of a plurality of keys in the session table and the random number as inputs; And detecting a comparison number that matches the token number and updating the sub-ip with respect to the main IP corresponding to the key of the comparison number.
실시 예로서, 상기 메인 아이피와 관련하여 상기 키를 상기 세션 테이블에 업데이트하는 단계는, 상기 노멀 패킷이 상기 제 1 호스트로부터 상기 제 2 호스트로 전송될 때 상기 노멀 패킷으로부터 상기 메인 아이피 및 호출키를 추출하고, 상기 메인 아이피와 관련하여 상기 호출키를 상기 세션 테이블에 업데이트하는 단계; 및 상기 노멀 패킷이 상기 제 2 호스트로부터 상기 제 2 호스트로 전송될 때 상기 노멀 패킷으로부터 상기 메인 아이피 및 응답키를 추출하고, 상기 메인 아이피와 관련하여 상기 응답키를 상기 세션 테이블에 업데이트하는 단계를 포함할 수 있다.As an embodiment, updating the key to the session table with respect to the main IP may further include transmitting the main IP and the call key from the normal packet when the normal packet is transmitted from the first host to the second host And updating the call key in the session table with respect to the main IP; And extracting the main IP and the response key from the normal packet when the normal packet is transmitted from the second host to the second host and updating the response key to the session table with respect to the main IP .
실시 예로서, 상기 서브 아이피를 상기 세션 테이블에 업데이트하는 단계는, 상기 제 3 옵션 정보에 포함된 랜덤 넘버, 그리고 상기 응답키와 상기 랜덤 넘버를 입력으로 연산된 토큰 넘버를 추출하는 단계; 상기 세션 테이블 내의 복수의 응답키들 각각과 상기 랜덤 넘버를 입력으로 연산하여 비교 넘버를 생성하는 단계; 상기 토큰 넘버와 일치하는 비교 넘버를 감지하고 상기 비교 넘버의 응답키에 대응하는 상기 세션 테이블 내의 상기 메인 아이피와 관련하여 상기 서브 아이피를 업데이트하는 단계를 포함할 수 있다.The step of updating the sub-IP address in the session table may include extracting a random number included in the third option information, and a token number calculated by inputting the response key and the random number, Generating a comparison number by computing each of a plurality of response keys in the session table and the random number as an input; Detecting a comparison number that matches the token number, and updating the sub-ip with respect to the main IP in the session table corresponding to the response key of the comparison number.
실시 예로서, 상기 패킷은 핸드쉐이킹(handshaking) 패킷일 수 있다.As an example, the packet may be a handshaking packet.
이때, 상기 동작 방법은 상기 제 1 호스트 및 상기 제 2 호스트 사이에서 상기 메인 세션을 통해 전송되는 제 1 데이터 패킷을 수신하는 단계; 상기 제 1 호스트 및 상기 제 2 호스트 사이에서 상기 서브 세션을 통해 전송되는 제 2 데이터 패킷을 수신하는 단계; 및 상기 세션 테이블을 조회하여 상기 제 1 데이터 패킷과 상기 제 2 데이터 패킷을 연관시켜 보안 처리를 수행하는 단계를 더 포함할 수 있다.The method may further include receiving a first data packet transmitted through the main session between the first host and the second host; Receiving a second data packet transmitted through the sub-session between the first host and the second host; And associating the first data packet with the second data packet by querying the session table to perform security processing.
본 발명의 다른 일면은 보안 장치의 동작 방법에 관한 것이다. 본 발명의 실시 예에 따른 보안 장치의 동작 방법은, 제 1 호스트 및 제 2 호스트 사이에서 전송되는 패킷의 제 1 옵션 정보를 참조하여 멀티 세션이 지원되는지 여부를 판별하도록 구성되는 제어부; 상기 통신이 상기 멀티 세션을 지원하는 경우, 상기 패킷의 제 2 옵션 정보를 참조하여 상기 패킷이 메인 세션에 해당하는지 서브 세션에 해당하는지 여부를 판별하도록 구성되는 세션 타입 판별부; 세션 테이블을 저장하도록 구성되는 저장부; 및 상기 패킷이 상기 메인 세션에 해당하는 노멀 패킷인 경우 상기 노멀 패킷으로부터 메인 아이피 및 키(key)를 추출하고 상기 메인 아이피와 관련하여 상기 키를 상기 세션 테이블에 업데이트하고, 상기 패킷이 상기 서브 세션에 해당하는 조인 패킷인 경우 상기 조인 패킷으로부터 서브 아이피를 추출하고 상기 조인 패킷의 제 3 옵션 정보를 참조함으로써 상기 메인 아이피와 관련하여 상기 서브 아이피를 상기 세션 테이블에 업데이트하도록 구성되는 테이블 관리부를 포함한다.Another aspect of the present invention relates to a method of operating a security device. A control unit configured to determine whether a multi-session is supported by referring to first option information of a packet transmitted between a first host and a second host, according to an exemplary embodiment of the present invention; A session type determining unit configured to determine whether the packet corresponds to a main session or a sub-session by referring to second option information of the packet when the communication supports the multi-session; A storage configured to store a session table; And if the packet is a normal packet corresponding to the main session, extracting a main IP and a key from the normal packet and updating the key in the session table with respect to the main IP, And a table management unit configured to extract the sub-IP from the join packet and to update the sub-IP in the session table with reference to the third option information of the join packet if the join packet corresponds to the main IP .
실시 예로서, 상기 테이블 관리부는 상기 제 3 옵션 정보를 참조하여 상기 메인 아이피와 관련하여 저장된 상기 키를 감지함으로써, 상기 메인 아이피와 관련하여 상기 서브 아이피를 업데이트하도록 구성된다.In an embodiment, the table management unit is configured to update the sub-IP with respect to the main IP by sensing the key stored in association with the main IP with reference to the third option information.
실시 예로서, 상기 제 3 옵션 정보는 랜덤 넘버, 그리고 상기 키와 상기 랜덤 넘버를 입력으로 연산된 토큰 넘버를 포함하되, 상기 테이블 관리부는 상기 조인 패킷으로부터 상기 랜덤 넘버 및 상기 토큰 넘버를 추출하고, 상기 세션 테이블 내의 복수의 키들 각각과 상기 랜덤 넘버를 입력으로 연산하여 비교 넘버를 생성할 수 있다.The third option information may include a random number and a token number calculated by inputting the key and the random number, wherein the table management unit extracts the random number and the token number from the join packet, The comparison number can be generated by calculating each of the plurality of keys in the session table and the random number as inputs.
실시 예로서, 상기 테이블 관리부는 상기 토큰 넘버와 일치하는 비교 넘버를 감지하고 상기 비교 넘버의 키에 대응하는 상기 메인 아이피와 관련하여 상기 서브 아이피를 추가적으로 업데이트할 수 있다.In an embodiment, the table management unit may detect a comparison number corresponding to the token number and may additionally update the sub-IP with respect to the main IP corresponding to the key of the comparison number.
실시 예로서, 상기 테이블 관리부는, 상기 노멀 패킷이 상기 제 1 호스트로부터 상기 제 2 호스트로 전송될 때 상기 노멀 패킷으로부터 상기 메인 아이피 및 호출키를 추출하고, 상기 메인 아이피와 관련하여 상기 호출키를 상기 세션 테이블에 업데이트하고, 상기 노멀 패킷이 상기 제 2 호스트로부터 상기 제 2 호스트로 전송될 때 상기 노멀 패킷으로부터 상기 메인 아이피 및 응답키를 추출하고, 상기 메인 아이피와 관련하여 상기 응답키를 상기 세션 테이블에 업데이트할 수 있다.As an embodiment, the table management unit may extract the main IP and the call key from the normal packet when the normal packet is transmitted from the first host to the second host, extract the main IP and the call key from the normal packet, Extracts the main IP and the response key from the normal packet when the normal packet is transmitted from the second host to the second host and updates the response key to the session with respect to the main IP, You can update the table.
실시 예로서, 상기 테이블 관리부는, 상기 제 3 옵션 정보에 포함된 랜덤 넘버, 그리고 상기 응답키와 상기 랜덤 넘버를 입력으로 연산된 토큰 넘버를 추출하고, 상기 세션 테이블 내의 복수의 응답키들 각각과 상기 랜덤 넘버를 입력으로 연산하여 비교 넘버를 생성하고, 상기 토큰 넘버와 일치하는 비교 넘버를 감지하여 상기 비교 넘버의 응답키에 대응하는 상기 메인 아이피와 관련하여 상기 서브 아이피를 업데이트할 수 있다.The table management unit may extract a random number included in the third option information, a token number calculated by inputting the response key and the random number, and a plurality of response keys in the session table, A random number is input to generate a comparison number, and a comparison number corresponding to the token number is detected to update the sub-IP with respect to the main IP corresponding to the response key of the comparison number.
본 발명의 실시 예에 따르면 네트워크 시스템 상의 보안 성능이 향상된다.According to an embodiment of the present invention, security performance on a network system is improved.
도 1은 네트워크 시스템을 보여주는 개념도이다.
도 2는 제 1 호스트와 제 2 호스트 사이의 3 웨이 핸드쉐이크(3way handshake)를 설명하기 위한 도면이다.
도 3은 메인 핸드쉐이크 시에 제 1 및 제 2 호스트들 사이에서 통신되는 핸드쉐이킹 패킷의 데이터 포맷을 보여주는 개념도이다.
도 4는 조인 핸드쉐이크 시에 제 1 및 제 2 호스트들 사이에서 통신되는 핸드쉐이킹 패킷의 데이터 포맷을 보여주는 개념도이다.
도 5는 본 발명의 실시 예에 따른 보안 장치의 동작 방법을 보여주는 순서도이다.
도 6은 세션 테이블을 보여주는 도면이다.
도 7은 데이터 패킷이 수신될 때 보안 장치의 보안 처리 방법을 보여주는 순서도이다.
도 8은 보안 장치의 일 실시 예를 보여주는 블록도이다.1 is a conceptual diagram showing a network system.
2 is a diagram for explaining a 3-way handshake between a first host and a second host;
3 is a conceptual diagram showing a data format of a handshaking packet communicated between the first and second hosts in the main handshake.
4 is a conceptual diagram showing a data format of a handshaking packet communicated between first and second hosts in a join handshake.
5 is a flowchart illustrating an operation method of a security device according to an embodiment of the present invention.
6 is a view showing a session table.
7 is a flowchart showing a security processing method of a security apparatus when a data packet is received.
8 is a block diagram illustrating an embodiment of a security device.
본 발명의 이점 및 특징, 그리고 그것을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 통해 설명될 것이다. 그러나 본 발명은 여기에서 설명되는 실시 예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 단지, 본 실시 예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 제공되는 것이다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and how to accomplish it, will be described with reference to the embodiments described in detail below with reference to the accompanying drawings. However, the present invention is not limited to the embodiments described herein but may be embodied in other forms. The embodiments are provided so that those skilled in the art can easily carry out the technical idea of the present invention to those skilled in the art.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only "directly connected" but also "indirectly connected" . Throughout the specification, when an element is referred to as "comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise.
도 1은 네트워크 시스템(100)을 보여주는 개념도이다.FIG. 1 is a conceptual diagram showing a
도 1을 참조하면, 네트워크 시스템(100)은 제 1 호스트(110), 제 1 네트워크(120), 보안 장치(130), 제 2 네트워크(140) 및 제 2 호스트(150)를 포함한다.Referring to FIG. 1, a
제 1 호스트(110)는 제 1 및 제 2 네트워크들(120, 140)을 통해 제 2 호스트(150)에 연결된다. 제 1 호스트(110)는 제 1 및 제 2 네트워크들(120, 140)을 통해 제 2 호스트(150)와 적어도 하나의 세션을 형성하고, 형성된 세션을 통해 데이터 패킷을 통신한다. 예를 들면, 제 1 호스트(110)는 제 2 호스트(150)와 데이터 패킷들을 주고받음으로써 다양한 서비스들을 제공받을 수 있다. 예를 들면, 제 1 호스트(110)는 제 2 호스트(150)와 데이터 패킷들을 주고받으면서 제 2 호스트(150)에 해당하는 웹 페이지에 접속할 수 있다. 예를 들면 제 1 호스트(110)는 제 2 호스트(150)로부터 제공된 애플리케이션을 설치하고, 설치된 애플리케이션으로 제 2 호스트(150)와 통신하여 음악, 동영상과 같은 콘텐츠를 제공받거나, 설치된 애플리케이션으로 제 2 호스트(150)와 통신하여 애니메이션, 게임 등의 서비스를 제공받을 수 있다.The
제 1 호스트(110)는 두 개의 아이피들(IP1, IP2)을 통해 제 2 호스트(150)와 통신할 수 있다. 예를 들면, 제 1 호스트(110)가 유선 네트워크와 통신하는 컴퓨팅 장치라고 가정할 때, 그러한 컴퓨팅 장치는 유선 랜에 해당하는 두 개의 아이피들을 선택적으로 사용하여 제 2 호스트(150)와 통신할 수 있다. 예를 들면, 제 1 호스트(110)가 유선 네트워크 및 무선 네트워크와 통신하는 컴퓨팅 장치라고 가정할 때, 그러한 컴퓨팅 장치는 유선 랜에 해당하는 아이피 및 무선 랜(예를 들면 와이파이(Wireless Fidelity))에 해당하는 아이피를 선택적으로 사용하여 제 2 호스트(150)와 통신할 수 있다. 예를 들면, 제 1 호스트(110)가 무선 네트워크와 통신하는 컴퓨팅 장치라고 가정할 때, 그러한 컴퓨팅 장치는 무선 랜에 해당하는 아이피와, 모바일 아이피(Mobile IP)를 선택적으로 사용하여 제 2 호스트(150)와 통신할 수 있다.The
제 1 호스트(110) 및 제 2 호스트(150)가 통신할 때, 제 1 호스트(110)의 제 1 아이피(IP1) 및 제 2 호스트의 제 k 아이피(IPk) 사이에 메인 세션이 형성되고, 제 1 호스트(110)의 제 2 아이피(IP2) 및 제 2 호스트의 제 k 아이피(IPk) 사이에 서브 세션이 형성된다. 제 1 및 제 2 호스트들(110, 150)은 메인 세션 및 서브 세션을 선택적으로 사용하면서 상호 데이터 패킷들을 교환할 것이다.When the
보안 장치(130)는 제 1 네트워크(120)를 통해 제 1 호스트(110)와 연결되고, 제 2 네트워크(140)를 통해 제 2 호스트(150)와 연결된다. 보안 장치(130)는 제 1 호스트(110)와 제 2 호스트(150) 사이의 통신을 관리하도록 구성된다.The
본 발명의 실시 예에 따르면, 보안 장치(130)는 제 1 및 제 2 호스트들(110, 150) 사이의 메인 세션을 통해 통신되는 데이터 패킷, 그리고 제 1 및 제 2 호스트들(110, 150) 사이의 서브 세션을 통해 통신되는 데이터 패킷을 연관시켜 보안 검사를 수행한다. 예를 들면, 보안 검사가 제 1 및 제 2 호스트들(110, 150) 사이에서 통신되는 데이터 패킷들의 수를 감시하는 방식을 사용하는 경우, 보안 장치(130)는 메인 세션을 통해 통신되는 데이터 패킷의 수 및 서브 세션을 통해 통신되는 데이터 패킷의 수를 모두 고려한다. 예를 들면, 보안 검사가 제 1 및 제 2 호스트들(110, 150) 사이에서 통신되는 데이터 패킷들에 특정 시그니처(signature)가 검출되는지 감시하는 방식을 사용하는 경우, 보안 장치(130)는 메인 세션을 통해 통신되는 데이터 패킷 및 서브 세션을 통해 통신되는 데이터 패킷을 취합하여 특정 시그니처가 검출되는지 여부를 판별한다.
According to an embodiment of the present invention, the
도 2는 제 1 호스트(HOST1)와 제 2 호스트(HOST2) 사이의 3 웨이 핸드쉐이크(3way handshake)를 설명하기 위한 도면이다. 도 3은 메인 핸드쉐이크 시에 제 1 및 제 2 호스트들(HOST1, HOST2) 사이에서 통신되는 핸드쉐이킹 패킷의 데이터 포맷을 보여주는 개념도이다. 도 4는 조인 핸드쉐이크 시에 제 1 및 제 2 호스트들(HOST1, HOST2) 사이에서 통신되는 핸드쉐이킹 패킷의 데이터 포맷을 보여주는 개념도이다.FIG. 2 is a diagram for explaining a 3-way handshake between the first host HOST1 and the second host HOST2. 3 is a conceptual diagram showing a data format of a handshaking packet communicated between the first and second hosts HOST1 and HOST2 in the main handshake. 4 is a conceptual diagram showing a data format of a handshaking packet communicated between the first and second hosts HOST1 and HOST2 at the time of a join handshake.
도 2를 참조하면, 3 웨이 핸드쉐이크는 메인 세션을 생성하기 위한 메인 핸드쉐이크와 서브 세션을 생성하기 위한 조인(join) 핸드쉐이크를 포함한다.Referring to FIG. 2, a three-way handshake includes a main handshake for creating a main session and a join handshake for creating a sub-session.
메인 핸드쉐이크에서, 제 1 호스트(HOST1)는 제 1 아이피(IP1)를 통해 제 2 호스트(HOST2)의 제 k 아이피(IPk)와 통신한다.In the main handshake, the first host (HOST1) communicates with the kth IP (IPk) of the second host (HOST2) via the first IP (IP1).
제 1 호스트(HOST1)는 제 2 호스트(HOST2)와 메인 세션을 형성하기 위해 SYN 정보(SYN)을 전송한다. 이때, 제 1 호스트(HOST1)가 생성하는 핸드쉐이킹 패킷에는 SYN 정보(SYN)와 함께, 당해 형성을 위한 세션이 메인 세션이라는 정보(MS), 그리고 호출키(KeyA)가 포함된다.The first host HOST1 transmits SYN information SYN to form a main session with the second host HOST2. At this time, the handshaking packet generated by the first host HOST1 includes SYN information (SYN), information indicating that the session for forming the session is a main session (MS), and a call key (KeyA).
이어서 제 2 호스트(HOST2)는 SYN 정보(SYN)에 응답하여 제 1 호스트(HOST1)의 제 1 아이피(IP1)에 SYN/ACK 정보(SYN/ACK)을 전송한다. 제 2 호스트(HOST2)가 생성하는 핸드쉐이킹 패킷에는 SYN/ACK 정보(SYN/ACK)와 함께, 해당 세션이 메인 세션이라는 정보(MS), 그리고 응답키(KeyB)가 포함된다.The second host HOST2 transmits SYN / ACK information (SYN / ACK) to the first IP (IP1) of the first host HOST1 in response to the SYN information SYN. The handshaking packet generated by the second host HOST2 includes SYN / ACK information (SYN / ACK), information indicating that the session is a main session (MS), and a response key (KeyB).
이후 제 1 호스트(HOST1)는 SYN/ACK 정보(SYN/ACK)에 응답하여 제 2 호스트(HOST2)에 ACK 정보(ACK)를 전송한다. 제 1 호스트(HOST1)가 생성하는 핸드쉐이킹 패킷에는 ACK 정보(ACK)과 함께, 해당 세션이 메인 세션이라는 정보(MS), 그리고 제 1 호스트(HOST1)가 생성했던 호출키(KeyA) 및 제 2 호스트(HOST2)가 생성했던 응답키(KeyB)가 포함된다.Then, the first host HOST1 transmits ACK information (ACK) to the second host HOST2 in response to the SYN / ACK information (SYN / ACK). The handshaking packet generated by the first host HOST1 includes ACK information (ACK), information indicating that the session is the main session (MS), a calling key (KeyA) generated by the first host HOST1, And a response key (KeyB) generated by the host (HOST2).
도 3을 참조하면, 메인 핸드쉐이크 시 제 1 및 제 2 호스트들(HOST1, HOST2)이 생성하는 핸드쉐이킹 패킷은 헤더 필드(HDF) 및 제 1 옵션 필드(OF1)를 포함한다.Referring to FIG. 3, a handshaking packet generated by the first and second hosts HOST1 and HOST2 includes a header field HDF and a first option field OF1 during a main handshake.
헤더 필드(HDF)는 소스 아이피(SIP) 및 목적지 아이피(DIP)를 포함한다. SYN 정보(SYN) 및 ACK 정보(ACK)의 경우, 소스 아이피(SIP)는 제 1 호스트(HOST1)의 제 1 아이피(IP1)를 가리키고 목적지 아이피(DIP)는 제 2 호스트(HOST2)의 제 k 아이피(IPk)를 가리킬 것이다. SYN/ACK 정보(SYN/ACK)의 경우, 소스 아이피(SIP)는 제 2 호스트(HOST2)의 제 k 아이피(IPk)를 가리키고 목적지 아이피(DIP)는 제 1 호스트(HOST1)의 제 1 아이피(IP1)를 가리킬 것이다.The header field HDF includes a source IP (SIP) and a destination IP (DIP). In the case of SYN information (SYN) and ACK information (ACK), the source IP (SIP) indicates the first IP (IP1) of the first host HOST1 and the destination IP It will point to IP (IPk). In the case of SYN / ACK information (SYN / ACK), the source IP (SIP) indicates the kth IP (IPk) of the second host HOST2 and the destination IP (DIP) indicates the first IP IP1).
더 나아가, 헤더 필드(HDF)에는 SYN 정보(SYN), SYN/ACK 정보(SYN/ACK), 또는 ACK 정보(ACK)가 포함될 것이다.Furthermore, the header field HDF will contain SYN information (SYN), SYN / ACK information (SYN / ACK), or ACK information (ACK).
제 1 옵션 필드(OF1)는 제 1 옵션 정보(kind), 제 2 옵션 정보(subtype) 및 키 정보(key)를 포함한다. 제 1 옵션 정보(kind)는 다중 경로 TCP, 즉 멀티 세션이 지원되는지 여부를 나타낸다. 제 1 호스트(110)가 생성하는 핸드쉐이킹 패킷의 경우 제 1 옵션 정보(kind)는 제 1 호스트(110)가 멀티 세션을 지원하는지 여부를 나타낼 것이다. 제 2 호스트(150)가 생성하는 핸드쉐이킹 패킷의 경우 제 1 옵션 정보(kind)는 제 2 호스트(150)가 멀티 세션을 지원하는지 여부를 나타낼 것이다.The first option field OF1 includes first option information (kind), second option information (subtype), and key information (key). The first option information (kind) indicates whether multi-path TCP, i.e., multi-session is supported. In the case of the handshaking packet generated by the
제 2 옵션 정보(subtype)는 핸드쉐이킹 패킷이 메인 세션을 형성하기 위한 것인지 아니면 서브 세션을 형성하기 위한 것인지를 나타낸다. 메인 핸드쉐이크 시에는 제 2 옵션 정보(subtype)에 도 2의 당 세션이 메인 세션이라는 정보(MS)가 포함될 것이다.The second option information (subtype) indicates whether the handshaking packet is for forming a main session or a subsession. In the main handshake, the second option information (subtype) will include information (MS) that the session of FIG. 2 is the main session.
실시 예로서, 핸드쉐이킹 패킷이 메인 세션을 형성하기 위한 것인지 아니면 서브 세션을 형성하기 위한 것인지는, 처음 SYN 정보(SYN)을 전송하는 제 1 호스트(HOST1)에 의해 결정될 것이다.As an embodiment, whether the handshaking packet is for forming a main session or a sub-session will be determined by the first host HOST1 transmitting the first SYN information SYN.
키 정보(key)에는 호출키(keyA) 및 응답키(keyB) 중 적어도 하나가 포함된다. SYN 정보(SYN)를 포함하는 핸드쉐이킹 패킷의 경우 키 정보(key)에 호출키(keyA)가 포함될 것이다. ACK 정보(ACK)를 포함하는 핸드쉐이킹 패킷의 경우 키 정보(key)에 호출키(keyA) 및 응답키(keyB)가 포함될 것이다.The key information includes at least one of a call key (key A) and a response key (key B). In the case of a handshaking packet including the SYN information SYN, the key information (key) will include the call key (key A). In the case of a handshaking packet including ACK information (ACK), the key information (key) will include a call key (keyA) and a response key (keyB).
다시 도 2를 참조하면, 서브 세션을 생성하기 위한 조인 핸드쉐이크에서, 제 1 호스트(HOST1)는 제 2 아이피(IP2)를 통해 제 2 호스트(HOST2)의 제 k 아이피(IPk)와 통신한다.Referring again to FIG. 2, in a join handshake for creating a sub-session, the first host HOST1 communicates with the kth IP (IPk) of the second host HOST2 via the second IP2.
제 1 호스트(HOST1)는 SYN 정보(SYN), 당해 형성을 위한 세션이 서브 세션이라는 정보(SS), 랜덤 넘버(RN) 및 토큰 넘버(TN)를 포함한 핸드쉐이킹 패킷을 제 2 호스트(HOST2)에 전송한다.The first host HOST1 transmits the handshaking packet including the SYN information SYN, the session information SSS, the random number RN and the token number TN to the second host HOST2, Lt; / RTI >
도 4를 참조하면, 조인 핸드쉐이크 시 제 1 및 제 2 호스트들(HOST1, HOST2)에 의해 생성되는 핸드쉐이킹 패킷은 헤더 필드(HDF) 및 제 2 옵션 필드(OF2)를 포함한다.Referring to FIG. 4, the handshaking packet generated by the first and second hosts HOST1 and HOST2 in the join handshake includes a header field HDF and a second option field OF2.
제 2 옵션 필드(OF2)는 제 1 옵션 정보(kind), 제 2 옵션 정보(subtype), 랜덤 넘버(RN) 및 토큰 넘버(TN)로 구성된 제 3 옵션 정보를 포함한다. 제 1 옵션 정보(kind)는 멀티 세션이 지원되는지 여부를 나타낸다. 제 2 옵션 정보(subtype)는 멀티 세션이 지원되는 경우 핸드쉐이킹 패킷이 메인 세션에 해당하는지 아니면 서브 세션에 해당하는지 여부를 나타낸다. 조인 핸드쉐이크 시에는 제 2 옵션 정보(subtype)에 도 2의 당 세션이 서브 세션이라는 정보(SS)가 포함될 것이다.The second option field OF2 includes third option information composed of first option information kind, second option information (subtype), random number (RN) and token number (TN). The first option information (kind) indicates whether or not the multisession is supported. The second option information (subtype) indicates whether the handshaking packet corresponds to the main session or the subsession when the multi-session is supported. During the join handshake, the second option information (subtype) will include the information (SS) that the session of FIG. 2 is a subsession.
랜덤 넘버(RN)는 제 1 호스트(HOST1)가 생성한 랜덤 값이고, 토큰 넘버(TN)는 랜덤 넘버(RN), 그리고 응답키(keyB)를 인풋으로 하여 연산된 값이다. 예를 들면, 제 1 호스트(HOST1)는 해쉬(Hash) 함수에 랜덤 넘버(RN) 및 응답키(keyB)을 인풋 값으로서 적용하여 토큰 넘버(TN)를 생성할 수 있다. 랜덤 넘버(RN) 및 토큰 넘버(TN)는 제 3 옵션 정보를 구성한다.The random number RN is a random value generated by the first host HOST1 and the token number TN is a value calculated by inputting a random number RN and a response key keyB. For example, the first host HOST1 may generate a token number TN by applying a random number RN and a response key keyB as an input value to a hash function. The random number RN and the token number TN constitute the third option information.
다시 도 2를 참조하면, 이후 제 2 호스트(HOST2)는 SYN/ACK 정보(SYN/ACK) 및 해당 세션이 서브 세션이라는 정보(SS)를 포함한 핸드쉐이킹 패킷을 제 1 호스트(HOST1)에 전송한다. 제 2 호스트(HOST2)는 메인 핸드쉐이크 시에 제 1 호스트(HOST1)로 제공했던 응답키(keyB)를 검색하고, 검색된 응답키(keyB)와 랜덤 넘버(RN)를 인풋으로 연산하고, 연산된 값을 토큰 넘버(TN)와 비교할 것이다. 만약 연산된 값과 토큰 넘버(TN)가 일치한다면, 제 2 호스트(HOST2)는 SYN/ACK 정보(SYN/ACK) 및 해당 세션이 서브 세션이라는 정보(SS)를 포함한 핸드쉐이킹 패킷을 제 1 호스트(HOST1)에 전송할 것이다. 만약 연산된 값과 토큰 넘버(TN)가 일치하지 않는다면, 제 2 호스트(HOST2)는 핸드쉐이킹 패킷을 제 1 호스트(HOST1)에 제공하지 않을 것이다. 실시 예로서, 제 2 호스트(HOST2)가 전송하는 핸드쉐이킹 패킷의 제 2 옵션 필드(OF2, 도 4 참조)의 랜덤 넘버(RN, 도 4 참조) 및 토큰 넘버(TN, 도 4 참조)는 널(null)일 수 있다.2, the second host HOST2 transmits a handshaking packet including the SYN / ACK information (SYN / ACK) and information indicating that the session is a subsession (SS) to the first host HOST1 . The second host HOST2 searches the response key keyB provided to the first host HOST1 at the time of the main handshake and computes the retrieved response key keyB and the random number RN with the input, Value to the token number (TN). If the calculated value and the token number TN match, the second host HOST2 transmits the handshaking packet including the SYN / ACK information (SYN / ACK) and the information that the session is a subsession (SS) (HOST1). If the calculated value and the token number TN do not match, the second host HOST2 will not provide the handshaking packet to the first host HOST1. As an embodiment, the random number RN (see FIG. 4) and the token number TN (see FIG. 4) of the second option field OF2 of the handshaking packet transmitted by the second host HOST2 (null).
이어서, 제 1 호스트(HOST1)는 제 2 아이피(IP2)를 통하여 ACK 정보(ACK)와 해당 세션이 서브 세션이라는 정보(SS)를 포함한 핸드쉐이킹 패킷을 제 2 호스트(HOST2)에 전송하여, 조인 핸드쉐이크를 완료할 것이다.
Then, the first host HOST1 transmits the handshaking packet including the ACK information (ACK) and the information (SS) that the session is a sub-session to the second host HOST2 through the second IP2, You will complete the handshake.
도 5는 본 발명의 실시 예에 따른 보안 장치(130)의 동작 방법을 보여주는 순서도이다. 도 6은 세션 테이블(STB)을 보여주는 도면이다.5 is a flowchart illustrating an operation method of the
도 1 및 도 5를 참조하면, S100단계에서, 보안 장치(130)는 제 1 호스트(HOST1) 및 제 2 호스트(HOST2) 사이에서 통신되는 핸드쉐이킹 패킷을 수신하여, 핸드쉐이킹 패킷의 아이피가 세션 테이블 내에 존재하는지 여부를 판별한다.1 and 5, in step S100, the
여기에서, 세션 테이블은 메인 아이피 및 서브 아이피의 매칭 정보를 포함하는 테이블이며, 보안 장치(130) 내의 저장 매체(도 8의 540 참조) 또는 보안 장치(130) 외부의 저장 매체에 저장될 수 있다. 메인 아이피는 메인 세션이 형성되는 소스 아이피(예를 들면 도 1의 IP1) 및 목적지 아이피(예를 들면 도 1의 IPk)를 의미할 것이다. 서브 아이피는 서브 세션이 형성되는 소스 아이피(예를 들면 도 1의 IP2) 및 목적지 아이피(예를 들면 도 1의 IPk)를 의미할 것이다.Here, the session table is a table containing the main IP and sub-IP matching information, and may be stored in a storage medium (see 540 in FIG. 8) in the
세션 테이블의 메인 아이피들 및 서브 아이피들 중 핸드쉐이킹 패킷의 아이피와 일치하는 것이 없다는 것은 해당 두 호스트들 사이에서 서브 세션 뿐만 아니라 메인 세션이 형성되지 않았음을 의미한다.The fact that there is no match between the IP of the handshaking packet among the main and sub-IPs of the session table means that the main session as well as the sub-session between the two hosts are not formed.
S110단계에서, 보안 장치(130)는 핸드쉐이킹 패킷이 TCP 하에 생성되었는지 여부를 판별한다. 수신된 핸드쉐이킹 패킷이 특정 패턴을 만족하는지 여부를 판별함으로써, 핸드쉐이킹 패킷이 TCP 하에 생성되었는지 여부를 판별할 수 있다. 실시 예로서, 수신된 핸드쉐이킹 패킷이 TCP 헤더(TCP header) 필드를 포함하는지 여부에 따라 핸드쉐이킹 패킷이 TCP 하에 생성되었는지 여부가 판별된다.In step S110, the
S120단계에서, 보안 장치(130)는 핸드쉐이킹 패킷의 옵션 필드(OF1 또는 OF2, 도 3 및 도 4 참조)의 제 1 옵션 정보(kind, 도 3 및 도 4 참조)를 참조하여, 멀티 세션이 지원되는지 여부를 판별한다. 제 1 옵션 정보(kind)는 다중 경로 TCP, 즉 멀티 세션이 지원되는지 여부를 나타낸다. 제 1 호스트(110)가 생성하는 핸드쉐이킹 패킷의 경우 제 1 옵션 정보(kind)는 제 1 호스트(110)가 멀티 세션을 지원하는지 여부를 나타낼 것이다. 제 2 호스트(150)가 생성하는 핸드쉐이킹 패킷의 경우 제 1 옵션 정보(kind)는 제 2 호스트(150)가 멀티 세션을 지원하는지 여부를 나타낼 것이다.In step S120, the
S130단계에서, 보안 장치(130)는 핸드쉐이킹 패킷의 옵션 필드(OF1 또는 OF2)의 제 2 옵션 정보(subtype, 도 3 및 도 4 참조)를 참조하여, 해당 세션이 메인 세션인지 아니면 서브 세션인지 여부를 판별한다. 만약 제 2 옵션 정보(subtype)가 해당 세션이 메인 세션이라는 정보(MS)를 포함하는 경우, S140단계가 수행된다. 만약 제 2 옵션 정보(subtype)가 해당 세션이 서브 세션이라는 정보(SS)를 포함하는 경우, S160단계가 수행된다.In step S130, the
S140단계에서, 보안 장치(130)는 해당 세션이 메인 세션인 경우 핸드쉐이킹 패킷에 포함된 아이피, 즉 메인 아이피, 그리고 호출키(keyA, 도 2 참조) 또는 응답키(keyB, 도 2 참조)를 추출한다. 메인 아아피는 제 1 호스트(110)의 제 1 아이피(IP1) 및 제 2 호스트(150)의 제 k 아이피(IPk)일 것이다.2) or a response key (see FIG. 2) in the handshaking packet when the session is the main session, in step S140, the
수신된 핸드쉐이킹 패킷이 만약 제 1 호스트(110)에서 생성하는 SYN 정보(SYN, 도 2 참조)를 포함하는 경우, 키 정보(key, 도 3 참조)로부터 호출키(keyA)가 추출될 것이다. 핸드쉐이킹 패킷이 만약 제 2 호스트(150)에서 생성되는 SYN/ACK 정보(SYN/ACK, 도 3 참조)를 포함하는 경우, 키 정보(key, 도 3 참조)로부터 응답키(keyB)가 추출될 것이다. 핸드쉐이킹 패킷이 만약 제 1 호스트(110에서 생성되는 ACK 정보(ACK, 도 3 참조)를 포함하는 경우, 호출키(keyA) 및 응답키(keyB)가 추출될 것이다.If the received handshaking packet includes SYN information (SYN, see FIG. 2) generated by the
S150단계에서, 보안 장치(130)는 추출된 메인 아이피, 그리고 호출키(keyA) 또는 응답키(keyB)를 세션 테이블에 업데이트한다.In step S150, the
도 6을 참조하면, 세션 테이블(STB)에는 메인 아이피(IP1, IPk) 및 그것에 대응하는 정보들이 매칭되어 있다. S150단계에서 호출키(keyA) 또는 응답키(keyB)가 세션테이블(STB)에 업데이트됨에 따라, 메인 아이피(IP1, IPk)에 호출키(keyA) 및 응답키(keyB)가 매칭될 것이다.Referring to FIG. 6, the main IPs IP1 and IPk and corresponding information are matched to the session table STB. The calling key A and the response key KB will be matched to the main IPs IP1 and IPk as the call key KA or the response key KB is updated in the session table STB in step S150.
S160단계에서, 해당 세션이 서브 세션인 경우, 보안 장치(130)는 핸드쉐이킹 패킷에 포함된 아이피, 즉 서브 아이피, 그리고 랜덤 넘버(RN) 및 토큰 넘버(TN)를 추출한다. 서브 아이피는 제 1 호스트(110)의 제 2 아이피(IP2) 및 제 2 호스트(150)의 제 k 아이피(IPk)일 것이다.In step S160, if the session is a sub-session, the
S170단계에서, 보안 장치(130)는 세션 테이블(STB) 내의 복수의 메인 아이피들과 대응하는 응답키들 각각과 랜덤 넘버를 인풋으로 하여 비교 넘버를 연산한다. S180단계에서, 보안 장치(130)는 연산된 비교 넘버와 토큰 넘버(TN)가 일치하는지 여부를 확인하고, 토큰 넘버(TN)와 일치하는 비교 넘버를 감지하면, 해당 비교 넘버의 응답키(keyB)를 인지한다. 보안 장치(130)는 인지된 응답키(keyB)의 메인 아이피(IP1, IPk)와 S160단계에서 추출된 서브 아이피(IP2)를 매칭하여 세션 테이블(STB)에 업데이트한다. 이에 따라 세션 테이블(STB)에는 메인 아이피(IP1, IPk)와 연관하여 호출키(keyA), 응답키(keyB), 그리고 서브 아이피(IP2)가 저장된다(S190).
In step S170, the
도 7은 데이터 패킷이 수신될 때 보안 장치(130)의 보안 처리 방법을 보여주는 순서도이다. 보안 장치(130)는 세션 테이블(STB)을 참조하여 보안 처리를 수행하게 된다.FIG. 7 is a flowchart showing a security processing method of the
도 7을 참조하면, S200단계에서, 보안 장비(130)는 제 1 및 제 2 호스트들(110, 150) 사이에서 메인 세션을 통해 전송되는 제 1 데이터 패킷을 수신한다. 실시 예로서, 메인 세션을 통한 제 1 데이터 패킷은 제 1 및 제 2 호스트들(110, 150) 사이에서 메인 핸드쉐이크에 따라 메인 세션이 생성된 후에 통신될 것이다. 실시 예로서, 메인 세션을 통한 제 1 데이터 패킷은 제 1 및 제 2 호스트들(110, 150) 사이에서 메인 핸드쉐이크 및 조인 핸드쉐이크가 완료되어 메인 세션 및 서브 세션이 생성된 후에 통신될 수 있다.Referring to FIG. 7, in step S200, the
S210단계에서, 보안 장비(130)는 제 1 및 제 2 호스트들(110, 150) 사이에서 서브 세션을 통해 전송되는 제 2 데이터 패킷을 수신한다. 제 2 데이터 패킷은 조인 핸드쉐이크에 따라 서브 세션이 생성된 후에 통신될 것이다. In step S210, the
S220단계에서, 보안 장비(130)는 세션 테이블(STB)을 조회함으로써, 제 1 및 제 2 데이터 패킷들을 연관시켜 보안 처리를 수행한다. 제 1 데이터 패킷의 아이피(즉 메인 아이피)와 제 2 데이터 패킷의 아이피(즉 서브 아이피)를 참조함으로써 제 1 데이터 패킷과 제 2 데이터 패킷이 각각 메인 세션과 서브 세션에 해당하는 것을 인지하고, 이에 따라 제 1 데이터 패킷과 제 2 데이터 패킷이 함께 고려되어 보안 처리가 수행될 수 있다.
In step S220, the
도 8은 보안 장치(130)의 일 실시 예를 보여주는 블록도이다.FIG. 8 is a block diagram illustrating an embodiment of
도 8을 참조하면, 보안 장치(130)는 수신부(510), 제어부(520), 세션 타입 판별부(530), 저장부(540), 테이블 관리부(550), 연산부(560), 전송부(580) 및 보안 유닛(590)을 포함한다.8, the
수신부(510)는 메인 핸드쉐이크 시에 통신되는 핸드쉐이크 패킷, 조인 핸드쉐이크 시에 통신되는 핸드쉐이크 패킷, 그리고 메인 세션 또는 서브 세션을 통해 통신되는 데이터 패킷을 수신하도록 구성된다.Receiving
제어부(520)는 보안 장치(130)의 제반 동작을 제어한다. 제어부(520)는 수신된 핸드쉐이킹 패킷의 아이피가 세션 테이블 내에 존재하는지 검색하도록 테이블 관리부(550)를 제어하고, 그 결과에 따라 핸드쉐이킹 패킷이 TCP 하에서 생성되었는지 여부를 판별한다.The
제어부(520)의 판별 결과에 따라 세션 타입 판별부(530)가 동작한다. 세션 타입 판별부(530)는 핸드쉐이킹 패킷의 제 1 옵션 정보(kind)를 참조하여 멀티 세션이 지원되는지 여부를 판별한다. 이어서 세션 타입 판별부(530)는 핸드쉐이킹 패킷의 제 2 옵션 정보(subtype)를 참조하여 해당 세션이 메인 세션인지 아니면 서브 세션인지 여부를 판별한다.The session
저장부(540)는 세션 테이블(STB)을 저장하도록 구성된다. 또한, 저장부(540)는 제어부(520)의 제어에 따라 수신부(510)를 통해 수신되는 데이터 패킷들을 저장한다. 저장부(540)에 저장된 데이터 패킷들에 따라 보안 유닛(590)은 보안 검사를 수행할 수 있다.The
만약 해당 세션이 메인 세션인 경우, 테이블 관리부(550)는 제어부(520)에 의해 추출된 메인 아이피, 그리고 호출키(keyA) 또는 응답키(keyB)를 수신하고, 이를 저장부(540)의 세션 테이블(STB)에 업데이트한다.If the session is a main session, the
만약 해당 세션이 서브 세션인 경우, 테이블 관리부(550)는 세션 테이블(STB) 내의 응답키들 각각을 연산부(560)에 제공한다. 한편 제어부(520)는 핸드쉐이킹 패킷으로부터 서브 아이피, 그리고 랜덤 넘버(RN) 및 토큰 넘버(TN)를 추출한다. 연산부(560)는 테이블 관리부(550)로부터 수신되는 세션 테이블(STB) 내의 응답키들 각각과, 추출된 랜덤 넘버(RN)를 인풋으로 연산하여 비교 넘버를 생성하고, 토큰 넘버(TN)와 일치하는 비교 넘버의 응답키(keyB)를 인지하고, 인지된 응답키(keyB)와 서브 아이피를 테이블 관리부(550)에 알린다. 테이블 관리부(550)는 응답키(keyB)와 서브 아이피를 메인 아이피와 연관하여 저장부(540)의 세션 테이블(STB)에 업데이트한다.If the session is a sub-session, the
보안 유닛(590)은 저장부(540)에 저장된 데이터 패킷들에 따라 보안 검사를 수행할 수 있다. 보안 유닛(590)은 보안 검사에 따라 해당 데이터 패킷이 허용 패킷으로 판별되면, 해당 데이터 패킷을 전송부(580)를 통해 외부로 전송할 것이다. 보안 유닛(590)은 보안 검사에 따라 해당 데이터 패킷이 악성 패킷으로 판별되면, 해당 데이터 패킷을 예를 들면 차단할 수 있다.
The
본 발명의 실시 예에 따르면, 보안 장치(130)는 제 1 및 제 2 호스트들(110, 150) 사이에서 메인 세션을 통해 통신되는 데이터 패킷, 그리고 제 1 및 제 2 호스트들(110, 150) 사이에서 서브 세션을 통해 통신되는 데이터 패킷을 연관시켜 보안 검사를 수행한다. 이에 따라, 네트워크 시스템(100) 내의 보안 장치(130)의 보안 성능은 향상된다.
According to an embodiment of the present invention, the
본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위와 기술적 사상에서 벗어나지 않는 한도 내에서 다양한 변경이 가능하다. 그러므로 본 발명의 범위는 상술한 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the invention. Therefore, the scope of the present invention should not be limited to the above-described embodiments, but should be determined by the equivalents of the claims of the present invention as well as the claims of the following.
110: 제 1 호스트
130: 보안 장치
150: 제 2 호스트
kind: 제 1 옵션 정보
subtype: 제 2 옵션 정보
keyA: 호출키
keyB: 응답키110: First host
130: Security device
150: Second host
kind: First option information
subtype: second option information
keyA: call key
keyB: response key
Claims (14)
상기 제 1 호스트 및 상기 제 2 호스트 사이에서 전송되는 패킷의 제 1 옵션 정보를 참조하여 멀티 세션이 지원되는지 여부를 판별하는 단계;
상기 통신이 상기 멀티 세션을 지원하는 경우, 상기 패킷의 제 2 옵션 정보를 참조하여 상기 패킷이 메인 세션에 해당하는지 서브 세션에 해당하는지 여부를 판별하는 단계;
상기 패킷이 상기 메인 세션에 해당하는 노멀 패킷인 경우 상기 노멀 패킷으로부터 메인 아이피 및 키(key)를 추출하고 상기 메인 아이피와 관련하여 상기 키를 세션 테이블에 업데이트하는 단계; 및
상기 패킷이 상기 서브 세션에 해당하는 조인 패킷인 경우 상기 조인 패킷으로부터 서브 아이피를 추출하고, 상기 조인 패킷의 제 3 옵션 정보를 참조함으로써 상기 메인 아이피와 관련하여 상기 서브 아이피를 상기 세션 테이블에 업데이트하는 단계를 포함하는 동작 방법.A method of operating a security device configured to manage communication between a first host and a second host, the method comprising:
Determining whether a multi-session is supported by referring to first option information of a packet transmitted between the first host and the second host;
Determining whether the packet corresponds to a main session or a sub-session with reference to second option information of the packet if the communication supports the multi-session;
Extracting a main IP and a key from the normal packet when the packet is a normal packet corresponding to the main session and updating the key in the session table with respect to the main IP; And
Extracting a sub-IP from the join packet if the packet is a join packet corresponding to the sub-session, and updating the sub-IP in the session table with reference to the third option information of the join packet ≪ / RTI >
상기 서브 아이피를 상기 세션 테이블에 업데이트하는 단계는 상기 제 3 옵션 정보를 참조하여 상기 메인 아이피와 관련하여 저장된 상기 키를 감지함으로써, 상기 메인 아이피와 관련하여 상기 서브 아이피를 업데이트하는 단계를 포함하는 동작 방법.The method according to claim 1,
Updating the sub-IP to the session table includes updating the sub-IP with respect to the main IP by sensing the key stored in association with the main IP with reference to the third option information Way.
상기 제 3 옵션 정보는 랜덤 넘버, 그리고 상기 키와 상기 랜덤 넘버를 입력으로 연산된 토큰 넘버를 포함하는 동작 방법.The method according to claim 1,
Wherein the third option information comprises a random number and a token number computed by inputting the key and the random number.
상기 서브 아이피를 상기 세선 테이블에 업데이트하는 단계는
상기 조인 패킷으로부터 상기 랜덤 넘버 및 상기 토큰 넘버를 추출하는 단계;
상기 세션 테이블 내의 복수의 키들 각각과 상기 랜덤 넘버를 입력으로 연산하여 비교 넘버를 생성하는 단계; 및
상기 토큰 넘버와 일치하는 비교 넘버를 감지하고 상기 비교 넘버의 키에 대응하는 상기 메인 아이피와 관련하여 상기 서브 아이피를 업데이트하는 단계를 포함하는 동작 방법.The method of claim 3,
Updating the sub-ip to the thin line table
Extracting the random number and the token number from the join packet;
Generating a comparison number by computing each of a plurality of keys in the session table and the random number as inputs; And
Detecting a comparison number that matches the token number and updating the sub-ip with respect to the main IP corresponding to the key of the comparison number.
상기 키를 상기 세션 테이블에 업데이트하는 단계는,
상기 노멀 패킷이 상기 제 1 호스트로부터 상기 제 2 호스트로 전송될 때 상기 노멀 패킷으로부터 상기 메인 아이피 및 호출키를 추출하고, 상기 메인 아이피와 관련하여 상기 호출키를 상기 세션 테이블에 업데이트하는 단계; 및
상기 노멀 패킷이 상기 제 2 호스트로부터 상기 제 1 호스트로 전송될 때 상기 노멀 패킷으로부터 상기 메인 아이피 및 응답키를 추출하고, 상기 메인 아이피와 관련하여 상기 응답키를 상기 세션 테이블에 업데이트하는 단계를 포함하는 동작 방법.The method according to claim 1,
Wherein updating the key to the session table comprises:
Extracting the main IP and the call key from the normal packet when the normal packet is transmitted from the first host to the second host and updating the call key in the session table with respect to the main IP; And
Extracting the main IP and the response key from the normal packet when the normal packet is transmitted from the second host to the first host and updating the response key in the session table with respect to the main IP Lt; / RTI >
상기 서브 아이피를 상기 세션 테이블에 업데이트하는 단계는,
상기 제 3 옵션 정보에 포함된 랜덤 넘버, 그리고 상기 응답키와 상기 랜덤 넘버를 입력으로 연산된 토큰 넘버를 추출하는 단계;
상기 세션 테이블 내의 복수의 응답키들 각각과 상기 랜덤 넘버를 입력으로 연산하여 비교 넘버를 생성하는 단계; 및
상기 토큰 넘버와 일치하는 비교 넘버를 감지하고 상기 비교 넘버의 응답키에 대응하는 상기 세션 테이블 내의 상기 메인 아이피와 관련하여 상기 서브 아이피를 업데이트하는 단계를 포함하는 동작 방법.6. The method of claim 5,
Wherein updating the sub-IP address to the session table comprises:
Extracting a random number included in the third option information, and a token number calculated by inputting the response key and the random number;
Generating a comparison number by computing each of a plurality of response keys in the session table and the random number as an input; And
Detecting a comparison number that matches the token number and updating the sub-ip in association with the main IP in the session table corresponding to the response key of the comparison number.
상기 패킷은 핸드쉐이킹(handshaking) 패킷인 동작 방법.The method according to claim 1,
Wherein the packet is a handshaking packet.
상기 제 1 호스트 및 상기 제 2 호스트 사이에서 상기 메인 세션을 통해 전송되는 제 1 데이터 패킷을 수신하는 단계;
상기 제 1 호스트 및 상기 제 2 호스트 사이에서 상기 서브 세션을 통해 전송되는 제 2 데이터 패킷을 수신하는 단계; 및
상기 세션 테이블을 조회하여 상기 제 1 데이터 패킷과 상기 제 2 데이터 패킷을 연관시켜 보안 처리를 수행하는 단계를 더 포함하는 동작 방법.8. The method of claim 7,
Receiving a first data packet transmitted through the main session between the first host and the second host;
Receiving a second data packet transmitted through the sub-session between the first host and the second host; And
Further comprising: querying the session table to associate the first data packet with the second data packet to perform security processing.
상기 제 1 호스트 및 상기 제 2 호스트 사이에서 전송되는 패킷의 제 1 옵션 정보를 참조하여 멀티 세션이 지원되는지 여부를 판별하도록 구성되는 제어부;
상기 통신이 상기 멀티 세션을 지원하는 경우, 상기 패킷의 제 2 옵션 정보를 참조하여 상기 패킷이 메인 세션에 해당하는지 서브 세션에 해당하는지 여부를 판별하도록 구성되는 세션 타입 판별부;
세션 테이블을 저장하도록 구성되는 저장부; 및
상기 패킷이 상기 메인 세션에 해당하는 노멀 패킷인 경우 상기 노멀 패킷으로부터 메인 아이피 및 키(key)를 추출하고 상기 메인 아이피와 관련하여 상기 키를 상기 세션 테이블에 업데이트하고, 상기 패킷이 상기 서브 세션에 해당하는 조인 패킷인 경우 상기 조인 패킷으로부터 서브 아이피를 추출하고 상기 조인 패킷의 제 3 옵션 정보를 참조함으로써 상기 메인 아이피와 관련하여 상기 서브 아이피를 상기 세션 테이블에 업데이트하도록 구성되는 테이블 관리부를 포함하는 보안 장치.A security device configured to manage communications between a first host and a second host, the security device comprising:
A controller configured to determine whether a multisession is supported by referring to first option information of a packet transmitted between the first host and the second host;
A session type determining unit configured to determine whether the packet corresponds to a main session or a sub-session by referring to second option information of the packet when the communication supports the multi-session;
A storage configured to store a session table; And
Extracting a main IP and a key from the normal packet if the packet is a normal packet corresponding to the main session, updating the key in the session table with respect to the main IP, And a table management unit configured to extract a sub-IP from the join packet and to update the sub-IP in the session table with reference to third option information of the join packet when the corresponding join packet is a corresponding join packet, Device.
상기 테이블 관리부는 상기 제 3 옵션 정보를 참조하여 상기 메인 아이피와 관련하여 저장된 상기 키를 감지함으로써, 상기 메인 아이피와 관련하여 상기 서브 아이피를 상기 세션 테이블에 업데이트하도록 구성되는 보안 장치.10. The method of claim 9,
And the table management unit is configured to update the sub-IP in the session table with respect to the main IP by sensing the key stored in association with the main IP with reference to the third option information.
상기 제 3 옵션 정보는 랜덤 넘버, 그리고 상기 키와 상기 랜덤 넘버를 입력으로 연산된 토큰 넘버를 포함하되,
상기 테이블 관리부는 상기 조인 패킷으로부터 상기 랜덤 넘버 및 상기 토큰 넘버를 추출하고, 상기 세션 테이블 내의 복수의 키들 각각과 상기 랜덤 넘버를 입력으로 연산하여 비교 넘버를 생성하는 보안 장치.10. The method of claim 9,
Wherein the third option information includes a random number and a token number calculated by inputting the key and the random number,
Wherein the table management unit extracts the random number and the token number from the join packet, and computes each of a plurality of keys in the session table and the random number as inputs to generate a comparison number.
상기 테이블 관리부는 상기 토큰 넘버와 일치하는 비교 넘버를 감지하고 상기 비교 넘버의 키에 대응하는 상기 메인 아이피와 관련하여 상기 서브 아이피를 상기 세션 테이블에 업데이트하는 보안 장치.12. The method of claim 11,
Wherein the table management unit detects a comparison number that matches the token number and updates the sub-ip in the session table with respect to the main IP corresponding to the key of the comparison number.
상기 테이블 관리부는,
상기 노멀 패킷이 상기 제 1 호스트로부터 상기 제 2 호스트로 전송될 때 상기 노멀 패킷으로부터 상기 메인 아이피 및 호출키를 추출하고, 상기 메인 아이피와 관련하여 상기 호출키를 상기 세션 테이블에 업데이트하고,
상기 노멀 패킷이 상기 제 2 호스트로부터 상기 제 1 호스트로 전송될 때 상기 노멀 패킷으로부터 상기 메인 아이피 및 응답키를 추출하고, 상기 메인 아이피와 관련하여 상기 응답키를 상기 세션 테이블에 업데이트하는 보안 장치.10. The method of claim 9,
The table management unit,
Extracting the main IP and the call key from the normal packet when the normal packet is transmitted from the first host to the second host, updating the call key in the session table with respect to the main IP,
Extracts the main IP and the response key from the normal packet when the normal packet is transmitted from the second host to the first host, and updates the response key with respect to the session table in association with the main IP.
상기 테이블 관리부는,
상기 제 3 옵션 정보에 포함된 랜덤 넘버, 그리고 상기 응답키와 상기 랜덤 넘버를 입력으로 연산된 토큰 넘버를 추출하고, 상기 세션 테이블 내의 복수의 응답키들 각각과 상기 랜덤 넘버를 입력으로 연산하여 비교 넘버를 생성하고, 상기 토큰 넘버와 일치하는 비교 넘버를 감지하여 상기 비교 넘버의 응답키에 대응하는 상기 메인 아이피와 관련하여 상기 서브 아이피를 업데이트하는 보안 장치.
14. The method of claim 13,
The table management unit,
A random number included in the third option information, and a token number calculated by inputting the response key and the random number, and calculating each of a plurality of response keys in the session table and the random number as input, Detects a comparison number that matches the token number, and updates the sub-ip with respect to the main IP corresponding to the response key of the comparison number.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20130161564A KR101491692B1 (en) | 2013-12-23 | 2013-12-23 | Security device managing multi session and operating method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20130161564A KR101491692B1 (en) | 2013-12-23 | 2013-12-23 | Security device managing multi session and operating method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101491692B1 true KR101491692B1 (en) | 2015-02-11 |
Family
ID=52591833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20130161564A KR101491692B1 (en) | 2013-12-23 | 2013-12-23 | Security device managing multi session and operating method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101491692B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003085063A (en) | 2001-09-10 | 2003-03-20 | Matsushita Electric Ind Co Ltd | Communication relaying device and communication method |
KR20110086227A (en) * | 2010-01-22 | 2011-07-28 | 차경민 | Method and system for interactive collaboration using multiple session |
KR101316903B1 (en) | 2012-09-19 | 2013-10-11 | 주식회사 시큐아이 | Method and appratus for synchronizing session in high availability system |
-
2013
- 2013-12-23 KR KR20130161564A patent/KR101491692B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003085063A (en) | 2001-09-10 | 2003-03-20 | Matsushita Electric Ind Co Ltd | Communication relaying device and communication method |
KR20110086227A (en) * | 2010-01-22 | 2011-07-28 | 차경민 | Method and system for interactive collaboration using multiple session |
KR101316903B1 (en) | 2012-09-19 | 2013-10-11 | 주식회사 시큐아이 | Method and appratus for synchronizing session in high availability system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7958240B2 (en) | Group judgment device | |
CN103609070B (en) | Network flow detection method, system, equipment and controller | |
JP4405360B2 (en) | Firewall system and firewall control method | |
US10334445B2 (en) | Accurate detection of rogue wireless access points | |
KR20130068631A (en) | Two-stage intrusion detection system for high speed packet process using network processor and method thereof | |
EP2991292A1 (en) | Network collaborative defense method, device and system | |
CN101674306B (en) | Address resolution protocol message processing method and switch | |
US10348687B2 (en) | Method and apparatus for using software defined networking and network function virtualization to secure residential networks | |
EP2795850B1 (en) | Modifying a property of a sequence of sent packets to uniquely identify an entity on a network such as an encrypted network | |
CN107078946A (en) | Processing method, the device and system of business stream process strategy | |
Simpson | TCP cookie transactions (TCPCT) | |
CN102546587B (en) | Prevent gateway system Session Resources by the method that maliciously exhausts and device | |
CN107634971B (en) | Method and device for detecting flood attack | |
CN110971701B (en) | Internet of things communication method and device | |
KR102683438B1 (en) | Apparatus and method for providing security to an end-to-end communication | |
CN115664740B (en) | Data packet forwarding attack defense method and system based on programmable data plane | |
KR101211147B1 (en) | System for network inspection and providing method thereof | |
KR101491692B1 (en) | Security device managing multi session and operating method thereof | |
CN108769055A (en) | A kind of falseness source IP detection method and device | |
JP5402304B2 (en) | Diagnostic program, diagnostic device, and diagnostic method | |
US9455911B1 (en) | In-band centralized control with connection-oriented control protocols | |
CN103166869B (en) | Message processing method and switch | |
JP3929969B2 (en) | COMMUNICATION SYSTEM, SERVER, TERMINAL DEVICE, COMMUNICATION METHOD, PROGRAM, AND STORAGE MEDIUM | |
KR101242765B1 (en) | Security appratus and method for processing asymmetric traffic | |
WO2018141392A1 (en) | Firewall support for multipath connections |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180202 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190201 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20200203 Year of fee payment: 6 |